Images
Images
דף זה מכסה את הצבת תמונות רסטר בדף, בחינת התמונות שכבר משולבות במסמך, והפחתת הגודל שלהן. עבור רינדור של page לתמונה, ראה Conversion.
הטמעת תמונה
Page.AddImage() מציב בתים של תמונות JPEG, PNG, BMP, או TIFF בתוך מלבן מדויק בפיקסלים על הדף.
// Source is 1280x1014; scaled to 60% of the page width, aspect preserved.
const srcW = 1280;
const srcH = 1014;
const imgW = pageWidth(page) * 0.6;
const imgH = (imgW * srcH) / srcW;
const x = (pageWidth(page) - imgW) / 2;
const y = (pageHeight(page) - imgH) / 2;
page.AddImage(imageBytes, [x, y, x + imgW, y + imgH]);AddImageOptions מקבל opacity, format מפורש כאשר אין אפשרות לזהות אותו מהבתים, tag (StructElement לחיבור התמונה אליו במסמך מתויג), ו-layer לתוכן אופציונלי.
בדיקת תמונות מוטמעות
Page.Images מוציא רשימה של כל תמונה שכבר נמצאת על הדף כ-ImageInfo[], ללא פענוח של נתוני פיקסלים — כל ערך חושף את Width, Height, Bits, ColorSpace, ו-Filter. קרא ל-Decode() על ImageInfo כדי לקבל את בתי המדגם הגולמיים, ל-Replace() כדי להחליף בנתוני תמונה חדשים במקום, או ל-Remove() כדי למחוק אותה מהדף.
for (const img of page.Images) {
console.log(img.Width, img.Height, img.ColorSpace, img.Filter);
}אופטימיזציה של תמונות
Document.Optimize() מקטין את גודל הקובץ לאורך כל המסמך; העבר אפשרות images (OptimizeImageOptions, עם שדות dpi ו-quality) כדי גם לבצע דגימה מחדש ולמקודד מחדש תמונות משובצות כחלק מאותו מעבר.
const report = doc.Optimize({ images: { dpi: 150, quality: 80 } });טיפים ושיטות מיטביות
Page.Imagesקורא רק מטה-נתונים — פענוח כל נתוני הפיקסלים המלאים של כל תמונה עםDecode()מראש אינו נחוץ אם אתה רק צריך את המימדים או מרחב הצבעים.- העבר
formatמפורש ב-AddImageOptionsכאשר בתים המקוריים מגיעים מזרם או מאוגר ללא סיומת קובץ מהימנה לזיהוי. - השתמש ב-
Document.Optimize({ images: { dpi, quality } })כדי לכווץ מסמך עם הרבה תמונות, במקום לפענח ולשוב להוסיף כל אחת באופן ידני. - המלבן של
Page.AddImage()קובע את הגודל המונח ישירות — שנה את גודל המלבן היעד ליחס הגובה-רוחב של תמונת המקור כדי למנוע מתיחה.
בעיות נפוצות
| בעיה | סיבה | תיקון |
|---|---|---|
| התמונה נראית מתמתחת או מכווצת | היעד rect שהועבר ל-AddImage() אינו תואם את יחס הגובה-רוחב של תמונת המקור | חשב את הרוחב/הגובה של המלבן מממדי תמונת המקור עצמה |
Page.AddImage() מציב את הפורמט הלא נכון | לא ניתן היה לזהות בצורה אמינה את פורמט בתיונות התמונה | ספק format מפורש ב-AddImageOptions |
| המסמך גדול משמעותית יותר מהצפוי לאחר הוספת תמונות | התמונות מוטמעות ברזולוציה ובאיכות מלאה | קרא ל-Document.Optimize({ images: { dpi, quality } }) כדי להקטין רזולוציה ולשחזר קידוד |
FAQ
איך אני ממקם תמונה בדף?
הפעל את page.AddImage(imageBytes, rect), כאשר rect הוא מלבן [x0, y0, x1, y1] בנקודות מרחב הדף.
איך אני מציג את רשימת התמונות שכבר קיימות בדף מבלי לפענח אותן?
קרא את page.Images — ImageInfo[] שמחשוף את Width, Height, ColorSpace ו-Filter עבור כל תמונה מבלי לפענח נתוני פיקסלים.
האם אני יכול להקטין את גודל הקובץ של מסמך על ידי דחיסת התמונות שלו?
כן — הפעל את Document.Optimize({ images: { dpi, quality } }), אשר מוריד רזולוציה וקודד מחדש תמונות מוטמעות כחלק מתהליך אופטימיזציה על-כל-המסמך.
איך הטמעת תמונה שונה מרינדור דף לתמונה?
Page.AddImage() ממקם בייטי תמונת רסטר על דף קיים. Page.ToImage() (ראה Conversion) עושה את ההפך — מציג את כל העמוד לבייטים בפורמט PNG.
API Reference סיכום
| מחלקה/מתודה | תיאור |
|---|---|
Page.AddImage() | הצב את בייטי התמונה במלבן על העמוד |
AddImageOptions | אפשרויות עבור AddImage(): opacity, format, tag, layer |
Page.Images | כל תמונה שכבר על העמוד, כ-ImageInfo[] רק-מטא-נתונים |
ImageInfo.Decode() / Replace() / Remove() | קרא נתוני פיקסלים, החלף בבייטים חדשים, או הסר תמונה |
Document.Optimize() | הקטן את גודל הקובץ לכל המסמך, באפשרותך לדגום מחדש תמונות דרך images: { dpi, quality } |