PerfectVector
โดย Irene Kim

ดึงโลโก้จาก Word โดยไม่สูญเสียพิกเซล

กู้คืนรูปภาพที่เก็บไว้ในไฟล์ Word หรือ PowerPoint ตรวจสอบขนาดพิกเซลและครอบตัด จากนั้นตัดสินใจว่าโลโก้ต้องมีการติดตามหรือแหล่งที่มาที่ดีกว่า

อ่าน 3 นาที
ในหน้านี้

หากต้องการแยกโลโก้ออกจากเอกสาร Word โดยไม่เพิ่มการสูญเสียคุณภาพอีก ให้กู้คืนไฟล์รูปภาพที่ฝังไว้ และตรวจสอบก่อนสร้างภาพหน้าจอหรือติดตาม DOCX ทั่วไปสามารถมีไบต์ของรูปภาพที่มีพิกเซลมากกว่าตำแหน่งหน้าที่เล็กที่แนะนำ การสกัดจะรักษาสิ่งที่เก็บไว้ ไม่สามารถกู้คืนพิกเซลที่ถูกทิ้งไปก่อนหน้านี้ได้

วิธีการตรวจสอบบรรจุภัณฑ์เดียวกันสามารถกู้คืนสื่อที่ฝังตัวจาก PPTX ธรรมดาได้ เส้นทาง Python ที่ทดสอบด้านล่างจะคัดลอกไบต์เหล่านั้นไปยังโฟลเดอร์ใหม่ มันไม่แสดง Word หรือ PowerPoint สร้างการครอบตัดที่แสดง หรือใช้เอฟเฟกต์ของหน้า ยืนยันว่ารูปภาพที่กู้คืนใดตรงกับโลโก้ที่ต้องการก่อนใช้งาน

ฟื้นตัวก่อนแล้วค่อยตัดสินที่ต้นเหตุ

รักษาเอกสารให้ไม่ถูกแตะต้อง คัดลอกสื่อที่เก็บไว้ ระบุโลโก้ที่ถูกต้อง และตรวจสอบขนาดพิกเซลจริง ขอบ และการครอบตัดที่ต้องการ รักษาเวกเตอร์ที่มีอยู่ไว้เมื่อคุณพบเวกเตอร์ ติดตามเฉพาะเมื่อแรสเตอร์ต้องการเส้นทางที่แก้ไขได้

ลองกับรูปภาพของคุณเอง
เปิดเครื่องมือฉบับเต็ม
ลองใช้ฟรี วางรูปภาพเพื่อดูตัวอย่างเวกเตอร์ของคุณได้เลย ไม่ต้องสมัครสมาชิก

ขนาดภาพที่จัดเก็บแตกต่างจากการจัดวางหน้า

รูปภาพที่ฝังไว้คือไฟล์ที่เก็บไว้ในแพ็คเกจเอกสาร การจัดวางคือวิธีการวางตำแหน่งและขนาดของรูปภาพบนหน้าหรือสไลด์ การครอบตัดหรือเอฟเฟ็กต์สามารถเปลี่ยนสิ่งที่คุณเห็นได้โดยไม่ต้องเหมือนกับไฟล์สื่อที่ซ่อนอยู่

คู่มือโครงสร้างเอกสาร Word ของ Microsoft อธิบายแพ็คเกจ DOCX ZIP และส่วนประกอบต่างๆ ตัวอย่างการแทรกรูปภาพ จะเก็บข้อมูลรูปภาพไว้ในส่วนของรูปภาพและอ้างอิงข้อมูลจากเอกสาร คุณไม่จำเป็นต้องเขียนโค้ด Open XML เพื่อลองแยกข้อมูลด้านล่าง

แยกคำถามสามข้อนี้ออกจากกัน:

คำถามสิ่งที่ต้องตรวจสอบสิ่งที่พิสูจน์ไม่ได้
เก็บรายละเอียดแรสเตอร์ได้มากน้อยเพียงใดขนาดพิกเซลและขอบของภาพที่แยกออกมาขนาดตำแหน่งหน้าเพียงอย่างเดียวไม่สามารถตอบคำถามนี้ได้
นี่คือโลโก้ที่ได้รับการอนุมัติหรือไม่เวอร์ชัน ตัวอักษร สี และการครอบตัดที่ต้องการไฟล์ที่ใหญ่ที่สุดไม่ใช่ไฟล์ที่ถูกต้องโดยอัตโนมัติ
ฉันต้องการเส้นทางเวกเตอร์หรือไม่?ข้อกำหนดของงานแก้ไข พิมพ์ หรือตัดครั้งต่อไปการแยกข้อมูลไม่ได้เปลี่ยนพิกเซลให้เป็นเส้นทาง

หากลูกค้ามีต้นฉบับของผู้ออกแบบก็ขอได้ คำแนะนำในการรับโลโก้ที่มีความละเอียดต่ำ ครอบคลุมถึงการคัดเลือกนั้น การตรวจสอบสื่อที่จัดเก็บของเอกสารจะมีประโยชน์เมื่อไฟล์ Office เป็นแหล่งที่ดีที่สุดที่มีอยู่ในปัจจุบัน

คัดลอกสื่อจากเอกสารที่ซ้ำกัน

คุณต้องมีสำเนา .docx หรือ .pptx ที่ไม่ได้เข้ารหัสในเครื่อง, Python 3 และชื่อโฟลเดอร์เอาต์พุตใหม่ นี่คือเวิร์กโฟลว์การแยกไฟล์ ไม่ใช่คำแนะนำเมนู Office .doc แบบเดิม เอกสารที่เข้ารหัส รูปภาพออนไลน์ที่เชื่อมโยง และลักษณะการทำงานบันทึกเป็นรูปภาพดั้งเดิมอยู่นอกขอบเขตที่ทดสอบ

  1. ทำซ้ำเอกสาร เก็บไฟล์ที่ได้รับไว้ไม่เปลี่ยนแปลง สำหรับคำสั่งตัวอย่าง ให้ตั้งชื่อสำเนา client-logo.docx และวางไว้ข้างสคริปต์
  2. บันทึกเป็น recover-media.py โดยใช้ zipfile module มาตรฐานของ Python อ่านรายการสื่อ และเขียนไบต์โดยไม่ต้องถอดรหัสหรือบีบอัดรูปภาพใหม่:
from pathlib import Path
from zipfile import ZipFile
from hashlib import sha256
import sys
 
source = Path(sys.argv[1])
output = Path(sys.argv[2])
if source.suffix.lower() not in {".docx", ".pptx"}:
    raise SystemExit("Use an ordinary, unencrypted DOCX or PPTX copy.")
 
with ZipFile(source, "r") as package:
    members = [
        item for item in package.infolist()
        if not item.is_dir()
        and item.filename.startswith(("word/media/", "ppt/media/"))
    ]
    if not members:
        raise SystemExit("No files found in the expected embedded-media folders.")
    output.mkdir(exist_ok=False)
    for index, member in enumerate(members, 1):
        data = package.read(member)
        target = output / f"{index:03d}-{Path(member.filename).name}"
        target.write_bytes(data)
        print(member.filename, "->", target, sha256(data).hexdigest())
  1. เรียกใช้จากโฟลเดอร์นั้น โฟลเดอร์เอาต์พุตจะต้องไม่มีอยู่:
python3 recover-media.py client-logo.docx recovered-logo

สำหรับสำเนา PowerPoint ให้เปลี่ยนอินพุตเป็นชื่อไฟล์ .pptx ของคุณ แล้วเลือกโฟลเดอร์เอาต์พุตอื่น หากระบบของคุณตั้งชื่อ Python 3 ว่า python แทนที่จะเป็น python3 ให้ใช้ไฟล์ปฏิบัติการนั้นแทน

  1. Read the output and inspect the files. The printed path shows the package member, such as word/media/image1.png or ppt/media/image1.png. สตริงเลขฐานสิบหกแบบยาวคือลายนิ้วมือ SHA-256 ขนาดไบต์ ชื่อเอาต์พุตที่เป็นตัวเลขช่วยให้รายการสื่อหลายรายการแตกต่างกัน image1 ไม่ใช่คำมั่นสัญญาว่าไฟล์ดังกล่าวจะเป็นโลโก้ของคุณ
  2. เปิดตัวเลือกที่น่าจะเป็นไปได้ในโปรแกรมดูรูปภาพ ตรวจสอบขนาดพิกเซลและตรวจสอบตัวอักษรที่เล็กที่สุด เส้นบาง และขอบที่การซูม 100% เปรียบเทียบเวอร์ชันที่ต้องการและครอบตัดกับเอกสารหรือข้อมูลอ้างอิงที่ลูกค้าอนุมัติ

หากคำสั่งรายงานว่ามีโฟลเดอร์เอาท์พุตอยู่ ให้ใช้ชื่อโฟลเดอร์ใหม่เพื่อให้คุณคงผลลัพธ์ก่อนหน้านี้ไว้ หากไม่พบรายการสื่อที่คาดหวัง เอกสารอาจใช้เนื้อหาหรือการอ้างอิงประเภทอื่น แทนที่จะเป็นรูปภาพที่ฝังไว้ซึ่งเส้นทางนี้คาดหวัง ขอภาพต้นฉบับหรือการส่งออกที่ไม่ได้เข้ารหัสที่เหมาะสม การเปลี่ยนชื่อ .doc แบบเดิมเป็น .docx จะไม่แปลงเนื้อหา

สิ่งที่การทดสอบแพ็คเกจได้รับการกู้คืน

We made valid DOCX and PPTX files with an original 1600 × 900 PNG logo, reopened the packages with their authoring libraries, and independently extracted the media. PNG ที่กู้คืนจาก DOCX ตรงกับไบต์อินพุตทุกประการ แม้ว่าจะมีการบันทึกความกว้างของตำแหน่งสี่นิ้วในเอกสารก็ตาม

PPTX มี PNG บวกกับข้อมูลเมตาสำหรับการครอบตัดที่เหลือ 25% การแตกข้อมูลยังคงส่งคืน PNG ที่เก็บไว้ 1600 × 900 เต็มด้วยลายนิ้วมือไบต์เดียวกัน นั่นคือการสังเกตข้อมูลแพ็คเกจ เราไม่ได้แสดงสไลด์หรือทดสอบว่าการครอบตัดมีลักษณะอย่างไรใน PowerPoint

นอกจากนี้เรายังลดขนาดโลโก้เป็น 400 × 225 JPEG ก่อนที่จะฝังลงใน DOCX อื่น การแยกส่งคืนไบต์ JPEG ที่ลดลงเท่าเดิม โดยยังคงเป็น 400 × 225 การควบคุมโดยเจตนานี้จะแสดงขอบเขต: การดึงภาพที่เก็บไว้จะไม่ย้อนกลับการลดขนาดก่อนหน้านี้ ไม่ได้แสดงให้เห็นถึงข้อบกพร่องในการบีบอัด Office

สื่อที่สกัดได้จริงจากบรรจุภัณฑ์ควบคุม
ดูตัวอย่างแสดงโลโก้ PNG ที่กู้คืนขนาด 1600 x 900 และ JPEG ขนาด 400 x 225 ที่ลดลงก่อนหน้านี้ พร้อมหมายเหตุที่แยกสื่อที่จัดเก็บไว้ออกจากตำแหน่ง DOCX และข้อมูลเมตาครอบตัด PPTX
PNG ที่เก็บไว้ดั้งเดิมจะถูกกู้คืนแบบไบต์ต่อไบต์ JPEG ที่ลดลงก่อนการฝังจะยังคงลดลงหลังจากการแตกไฟล์

สิ่งเหล่านี้เป็นการทดสอบแพ็คเกจที่เขียนโดยไลบรารี ไม่ใช่การทดสอบ Word หรือ PowerPoint UI แบบเนทีฟ บันทึกเป็นรูปภาพ หรือการทดสอบการแสดงผลและการแสดงผล ไม่มีการเรียกใช้การแปลง PerfectVector สำหรับการเปรียบเทียบนี้

เลือกสินทรัพย์ที่กู้คืนก่อนการติดตาม

อย่าเลือกตามชื่อไฟล์หรือขนาดไฟล์เพียงอย่างเดียว เอกสารสามารถเก็บรูปภาพหรือรูปแบบอื่นได้ และรูปภาพที่จัดเก็บสามารถรวมเนื้อหาที่อยู่นอกการครอบตัดที่มองเห็นได้ ยืนยันรูปร่าง โลโก้ตัวอักษร เวอร์ชัน และการครอบตัดที่จำเป็นก่อนที่จะถือว่าโลโก้เป็นแหล่งที่มา

หากคุณกู้คืนไฟล์เวกเตอร์ที่มีอยู่ ให้เก็บไว้และตรวจสอบว่ามีเส้นทางที่คุณต้องการหรือไม่ ไม่มีประโยชน์ในการแรสเตอร์เพียงเพื่อติดตามอีกครั้ง คำแนะนำเกี่ยวกับรูปแบบไฟล์โลโก้จะอธิบายต้นแบบที่แก้ไขได้และสำเนาการนำส่ง การกู้คืน PDF เท่านั้นเป็นงานแยกต่างหากที่การตรวจสอบและการแปลงอาร์ตเวิร์ก PDF ครอบคลุมอยู่

สำหรับแรสเตอร์ ให้ตรวจสอบพิกเซลที่คุณกู้คืนได้จริง หากตัวอักษรขนาดเล็กพร่ามัว เสียหาย หรือหายไป ให้ค้นหาต้นฉบับหรือสร้างใหม่โดยเจตนา การขยายสำเนาที่เก็บไว้ไม่ได้พิสูจน์รูปร่างตัวอักษรที่สูญหาย รูปภาพขนาดใหญ่ที่มีการครอบตัดไม่ถูกต้องหรือมีแบรนด์ที่ล้าสมัยก็เป็นแหล่งที่มาที่ไม่ถูกต้องเช่นกัน

สำหรับการส่งต่อเอกสารในอนาคต Microsoft จะจัดทำเอกสารการควบคุมการบีบอัดรูปภาพสำหรับ Word, PowerPoint และ Excel นั่นคือการตั้งค่าเชิงป้องกันเพื่อหารือกับผู้เขียนเอกสาร ไม่ใช่การดำเนินการกู้คืนที่ทดสอบที่นี่ ขอไฟล์โลโก้ต้นฉบับแยกกันเมื่อเป็นไปได้

สร้างเวกเตอร์เฉพาะเมื่องานถัดไปต้องการเส้นทางเท่านั้น

PerfectVector เหมาะกับเมื่อไฟล์ที่กู้คืนเป็นโลโก้แรสเตอร์ซึ่งมีรูปร่างที่มองเห็นได้ซึ่งคุณต้องการเป็นเส้นทางเวกเตอร์ที่แก้ไขได้ ใช้ เครื่องมือเวกเตอร์โลโก้ กับรูปภาพที่ได้รับการยอมรับดีที่สุด จากนั้นเปรียบเทียบตัวอย่างกับแหล่งที่มานั้น โดยเฉพาะตัวอักษรที่เล็กที่สุด ตัวนับ และเส้นบางๆ

การสกัดและการทำเวกเตอร์ช่วยแก้ปัญหาที่แตกต่างกัน ขั้นแรกจะดึงข้อมูลภาพที่เก็บไว้ ส่วนที่สองตีความรูปร่างแรสเตอร์เป็นเส้นทาง ไม่ได้ยืนยันว่าคุณได้เลือกโลโก้ที่ได้รับอนุมัติแล้ว และการติดตามก็ไม่สามารถพิสูจน์ได้ว่าพิกเซลที่หายไปนั้นหมายถึงอะไรในตอนแรก การแก้ไขและส่งออกผลลัพธ์ PerfectVector จำเป็นต้องปลดล็อค การแสดงตัวอย่างที่ได้รับการป้องกันเป็นแบบดูอย่างเดียว

คำถามที่พบบ่อย

การแยกโลโก้ออกจาก Word จะคืนคุณภาพดั้งเดิมหรือไม่ จะดึงสิ่งที่ยังคงอยู่ในเอกสาร หากเป็นภาพต้นฉบับ คุณสามารถกู้คืนไบต์ที่เก็บไว้ได้ หากลดลงก่อนการจัดเก็บ การแยกจะไม่นำพิกเซลที่ถูกทิ้งกลับมา

ภาพที่แยกออกมาจะตรงกับการครอบตัดที่ปรากฏบนเพจหรือไม่ ไม่จำเป็น. แพ็คเกจสามารถจัดเก็บภาพเต็มแยกจากตำแหน่งหรือครอบตัดข้อมูลเมตา เปรียบเทียบไฟล์ที่กู้คืนกับอาร์ตเวิร์คที่ต้องการ และยืนยันการครอบตัดก่อนใช้งาน

ฉันสามารถใช้สคริปต์เดียวกันสำหรับ PowerPoint ได้หรือไม่ ใช่ สำหรับเวิร์กโฟลว์ PPTX ที่ไม่ได้เข้ารหัสทั่วไปที่ทดสอบที่นี่ มอบสำเนา PPTX และชื่อโฟลเดอร์เอาต์พุตใหม่ให้กับสคริปต์ มันคัดลอกสื่อจากโฟลเดอร์แพ็คเกจที่คาดหวัง มันไม่เรนเดอร์สไลด์หรือใช้เอฟเฟ็กต์ของมัน

แหล่งที่มา

  1. Microsoft Learn — โครงสร้างของเอกสาร WordprocessingML — อธิบายแพ็คเกจ DOCX ZIP และส่วนประกอบของเอกสาร
  2. Microsoft Learn — แทรกรูปภาพลงในเอกสารประมวลผลคำ — แสดงข้อมูลรูปภาพที่จัดเก็บไว้ในส่วนของรูปภาพที่อ้างอิงโดยเอกสาร
  3. Python — zipfile — บันทึกโปรแกรมอ่านไฟล์เก็บถาวรไลบรารีมาตรฐานที่ใช้โดยสคริปต์การแตกไฟล์ที่ทดสอบ
  4. การสนับสนุนของ Microsoft — ปิดการบีบอัดรูปภาพ — อธิบายการตั้งค่าการบีบอัดเชิงป้องกันสำหรับการแฮนด์ออฟเอกสารในอนาคต

หากแรสเตอร์ที่กู้คืนของคุณต้องการเส้นทางที่แก้ไขได้ เริ่มต้นด้วยโลโก้นั้นฟรี ตรวจสอบตัวอักษรเล็กๆ และรายละเอียดเล็กๆ ของตัวอย่างเวกเตอร์กับภาพที่แยกออกมาก่อนที่จะยอมรับผลลัพธ์

เพิ่มเติมจากบล็อก

PerfectVector

เปลี่ยนโลโก้หรืองานศิลป์เป็น
SVG ที่เรียบร้อยและแก้ไขได้

แปลงเวกเตอร์และตรวจดูพรีวิวได้ฟรี ไม่จำกัดจำนวนครั้งต่อวัน