หากคุณสแกนหน้าเว็บที่มีข้อความเป็น PDF และเรียกใช้แอปพลิเคชัน OCR จากนั้นข้อความจะถูกเพิ่มลงในหน้า แต่ "โหมดการแสดงผลข้อความ" ถูกตั้งค่าเป็นมองไม่เห็น มี แต่ไม่มีการแสดงผลบนหน้าจอ (หรือบนกระดาษหากพิมพ์) สิ่งที่คุณเห็นหรือพิมพ์คือภาพต้นฉบับที่สแกน
เราจะทำให้ข้อความที่มองไม่เห็นปรากฏได้อย่างไร
เราสามารถแก้ไข PDF ... รหัส PDF เพื่อตั้งค่าการแสดงผลข้อความเป็นล่องหนคือ:
3 Tr
คุณไม่พบสตริงนี้ (ยัง) ในต้นฉบับfrom_abbyy.pdfหรือในfrom_ghostscript.pdfเนื่องจากบางส่วนของ PDF ถูกบีบอัด ดังนั้นเราจึงคลายการบีบอัดข้อมูลเท่าที่จะทำได้ด้วยความช่วยเหลือของqpdf
:
qpdf \
--qdf \
from_abbyy.pdf \
qdf--from_abbyy.pdf
qpdf \
--qdf \
after_ghostscript.pdf \
qdf--after_ghostscript.pdf
ตอนนี้เราสามารถค้นหาสตริงข้างต้นได้อย่างง่ายดาย (และมีเพียงหนึ่งเกิดขึ้นในแต่ละไฟล์)
ลองเปลี่ยนเป็นโหมดการแสดงผลข้อความอย่างใดอย่างหนึ่ง โดยรวมเราสามารถเลือกระหว่างโหมดการแสดงผลข้อความ 8 โหมด:
0 - fill glyph shapes
1 - stroke glyph shapes
2 - fill, then stroke glyph shapes
3 - neither fill nor stroke glyph shapes (invisible)
4 - fill and add to path for clipping glyph shapes
5 - stroke glyph shapes and add to path for clipping
6 - fill, then stroke glyph shapes and add path for clipping
7 - add glyph shapes to path for clipping
หากฉันใช้โหมด "เติม" ข้อความจาก OCR อาจดูไม่ดีเท่าบนภาพสแกนต้นแบบ ดังนั้นฉันชอบตัวแปร "จังหวะ" ดังนั้นฉันก็เปลี่ยนข้างบนบรรทัดเพื่ออ่าน
1 Tr
ดู PDF ที่ดัดแปลงนี้ฉันไม่ชอบเพราะ linewidth เริ่มต้นหนาเกินไปสำหรับรสนิยมของฉัน นอกจากนี้สีของลายเส้นโครงร่างเป็นสีดำ (ค่าเริ่มต้น) ฉันต้องการสีแดงเพื่อที่จะได้ตัดกับรูปร่างที่สแกนไว้ตั้งแต่แรก ดังนั้นฉันเพิ่มรหัสบางส่วนที่ด้านหน้าของบรรทัดนี้ซึ่งตั้ง linewidth ถึงหนึ่งในสี่ของจุด:
.25 w
และอื่น ๆ เพื่อตั้งค่าจังหวะสีเป็นสีแดง:
1 0 0 RG
บรรทัดที่สมบูรณ์ตอนนี้อ่านแล้ว:
.25 w 1 0 0 RG 1 Tr
นั่นคือทั้งหมดที่
โปรดทราบว่าการเปลี่ยนแปลงเล็กน้อยของเราทำให้ไฟล์เสียหายเนื่องจาก "TOC" (ในแง่เทคนิค: xref
ตาราง) จะไม่สามารถใช้งานได้อีกต่อไป Acrobat Reader หรือ Acrobat Professional จะยังคงเปิดมัน (โดยไม่บ่นแม้) และ "ซ่อม" ส่วน xref ของไฟล์ในใจ โปรแกรมดู PDF อื่น ๆ อาจปฏิเสธไฟล์ แต่ตอนนี้เราไม่สนใจ ...
นี่คือภาพหน้าจอของผลลัพธ์:
(ภาพหน้าจอแรกถูกซูมไปที่ความกว้างของหน้าต่าง)
(ภาพหน้าจอที่สองถูกซูมเป็น 800%)
โครงร่างสีแดงคือข้อความที่สแกนที่ทำให้มองเห็นได้ในขณะนี้ตามที่เราต้องการ
ข้าพเจ้าได้ปฏิบัติตามขั้นตอนที่ระบุไว้ข้างต้นสำหรับไฟล์ทั้งfrom_abbyy.pdfและafter_ghostscript.pdf ฉันเปิดทั้งสองผลลัพธ์ในสองอินสแตนซ์ที่แตกต่างกันของ Acrobat Reader [alt]+[tab]
ถ้าเราทำให้พวกเขาซูมทั้งค่าเดียวกันและเพิ่มทั้งหน้าต่างแล้วมันเป็นเรื่องง่ายที่จะสลับมุมมองระหว่างทั้งสองไฟล์ผ่านทาง นี่เป็นวิธีที่ดีในการเปิดเผยความแตกต่างของการแสดงผลที่ดีที่สุดระหว่างสองไฟล์ PDF
ผลลัพธ์ของฉันคือ: ไม่มีแม้แต่พิกเซลเดียวที่แตกต่างกันระหว่างอินพุต Ghostscript (v9.02) และเอาต์พุตสำหรับไฟล์นี้ แต่มีความแตกต่างค่อนข้างมากถ้าคุณต้องการ copy'n'paste text ...