המונחים: shapes בנפרד ממכתב

בעת עיבוד מסמכים, משימה נפוצה היא לחלץ את כל התמונות שנמצאו במסמך ולייצא אותם למיקום חיצוני. משימה זו הופכת פשוטה עם Aspose.Words API, אשר כבר מספק את הפונקציונליות של תמצית והצלת נתוני תמונה. עם זאת, לפעמים ייתכן שתרצה גם לחלץ סוגים אחרים של תוכן גרפי מיוצג על ידי סוג אחר של אובייקט ציור, למשל, תיבת טקסט המכיל פסקאות, צורות חץ, ותמונה קטנה. אין דרך פשוטה להפוך את האובייקט הזה מכיוון שהוא שילוב של רכיבי תוכן בודדים. אתה יכול גם להיתקל במקרה כאשר התוכן נאסף יחד לתוך האובייקט שנראה כמו תמונה אחת.

Aspose.Words מספק פונקציונליות עבור תמצית סוג זה של תוכן באותה הדרך אתה יכול לחלץ תמונה פשוטה מצורה כמו התוכן. מאמר זה מתאר כיצד לנצל פונקציונליות זו כדי להפוך צורות עצמאיות של המסמך.

צורות Aspose.Words

כל התוכן בשכבה ציור מסמך מיוצג על ידי Shape או GroupShape המונחים: Aspose.Words Document ObjectמודולDOM). תוכן כזה יכול להיות תיבות טקסט, תמונות, AutoShapes, אובייקטים פשוטים וכו ‘. שדות מסוימים מיובאים גם כצורות, למשל, INCLUDEPICTURE שדה.

תמונה פשוטה מיוצגת על ידי Shape Node of ShapeType.Image. צורה זו Node אין צמתים של ילדים, אך נתוני התמונה הכלולים בתוך צורה זו ניתן לגשת על ידי הצומת. Shape.ImageData רכוש. מצד שני, צורה יכולה גם להיות מורכבת מאבני ילדים רבות. לדוגמה, טופס תיבת טקסט, אשר מיוצג על ידי ShapeType.TextBox רכוש, יכול להיות מורכב מנקודות רבות, כגון Paragraph ו Table. רוב הצורות יכולות לכלול Paragraph ו Table צומת בגובה בלוק אלה הם אותם צמתים כמו אלה המופיעים בגוף הראשי. צורות הן תמיד חלקים של פסקה מסוימת, או כלול ישירות Inline או מעוגן אל סעיף, אבל “לצוף” בכל מקום בדף המסמך.

rendering-shapes-separately-from-a-document_1

מסמך יכול לכלול גם צורות אשר מקובצים יחד. Groupניתן להכניס Microsoft Word על ידי בחירת פריטים מרובים ולחיצה על “Group"בתפריט הקליק הנכון.

rendering-shapes-separately-from-a-document_2

In In In Aspose.Words, קבוצות אלה של צורות מיוצגות על ידי GroupShape צומת. ניתן גם להשתמש בהם באותה הדרך כדי להפוך את הקבוצה כולה לדימוי.

rendering-shapes-separately-from-a-document_3

פורמט DOCX יכול להכיל סוגים מיוחדים של תמונות, כגון דיאגרמות או תרשימים. גם צורות אלה מיוצגות באמצעות Shape המונחים: Aspose.Words, אשר גם מספק שיטה דומה להכנת תמונות. על ידי עיצוב, צורה לא יכולה להכיל צורה אחרת כילד, אלא אם כן צורה זו היא תמונה (ShapeType.Image). לדוגמה, Microsoft Word לא מאפשר לך להכניס תיבת טקסט בתוך תיבת טקסט אחרת.

סוגי הצורה המתוארים לעיל מספקים שיטה מיוחדת כדי להפוך את הצורות דרך ShapeRenderer מעמד. מקרה של ShapeRenderer שיעור נלקח עבור Shape או GroupShape דרך GetShapeRenderer שיטה או ע"י העברת Shape אל המבנה של ShapeRenderer מעמד. מחלקה זו מספקת גישה לחברים, המאפשרים להפוך צורה לאחר:

  • קובץ על הדיסק באמצעות Save המונחים overload
  • זרם באמצעות Save המונחים overload

עקבו אחרי File or Stream

The The The Save שיטה מספקת עומסים שהופכים צורה ישירות לקובץ או לזרם. שניהם מקבלים מקרה של ImageSaveOptions מעמד, המאפשר להגדיר אפשרויות להכנת הצורה. זה עובד באותה צורה כמו Document.Save שיטה. למרות פרמטר זה נדרש, אתה יכול להעביר ערך אפס, וציין כי אין אפשרויות מותאמות אישית.

את הצורה ניתן לייצא בכל פורמט תמונה שצוין ב SaveFormat אזהרה. לדוגמה, ניתן להפוך את התמונה כתמונה raster, כגון JPEG על ידי ציון התמונה. SaveFormat.Jpeg enumeration, או כדמות וקטור, כגון EMF על ידי סימון SaveFormat.Emf.

הדוגמה הקודית מתחת ממחישה את הצורה לדימוי EMF בנפרד ממסמכים והצלת לדיסק:

הדוגמה הקודית למטה ממחישה את הצורה לדימוי JPEG בנפרד ממסמכים והצלת זרם:

The The The ImageSaveOptions הכיתה מאפשרת לך לציין מגוון רחב של אפשרויות השולטות כיצד התמונה ניתנת. את הפונקציונליות המתוארת לעיל ניתן ליישם באותה הדרך. GroupShape ו Shape צומת

בורחים ל .NET אובייקטים גרפיים

לרוץ ישירות Graphics האובייקט מאפשר לך להגדיר הגדרות משלך ואת המדינה עבור Graphics אובייקט. תרחיש נפוץ כרוך להפוך צורה ישירות לתוך צורה Graphics מקור: From a Windows טופס או Bitmap מתי Shape צומת ניתן, ההגדרות ישפיעו על המראה הצורה. לדוגמה, אתה יכול לסובב או לדרג את הצורה על ידי שימוש RotateTransform או ScaleTransform שיטות ל Graphics אובייקט.

הדוגמה למטה מראה כיצד להפוך צורה ל.NET Graphics אובייקט בנפרד מן המסמך וליישם סיבוב על התמונה שניתנה:

באופן דומה, RenderToSize השיטה, RenderToSizeשיטה תורשתית NodeRendererBase שימושי ליצירת אגודל של תוכן מסמך. גודל הצורה מוגדר באמצעות הבונים. The The The RenderToSize השיטה מקבלת את Graphics האובייקט, X ו- Y לתאם את מיקום התמונה, ואת גודל התמונה (width וגובה) אשר יימשכו על Graphics אובייקט.

The The The Shape ניתן להגיע לגודל מסוים באמצעות ShapeRenderer.RenderToScale שיטה תורשתית NodeRendererBase מעמד. זה דומה לזה Document.RenderToScale שיטה שמקבלת את אותם הפרמטרים העיקריים. ההבדל בין שתי השיטות הללו הוא זה עם ShapeRenderer.RenderToScale שיטה, במקום גודל מילולי, אתה בוחר ערך צף המפחית את הצורה במהלך ההזנה שלו. אם ערך הצף שווה 1.0 גורם את הצורה להיות ניתן ב-100% מהגודל המקורי שלה. ערך צף של 0.5 יפחית את גודל התמונה בחצי.

עקבו אחרי A Shape Image

The The The Shape הכיתה מייצגת אובייקטים בשכבה הציורית, כגון AutoShape, תיבת טקסט, freeform, OLE object, ActiveX control או תמונה. באמצעות Shape בכיתה, אתה יכול ליצור או לשנות צורות ב Microsoft Word מסמך. נכס חשוב של צורה הוא ShapeType. צורות של סוגים שונים יכולות להיות יכולות שונות במסמך Word. לדוגמה, רק תמונות וצורות שלמות יכולות להיות תמונות בתוכם בעוד שרוב הצורות יכולות להיות טקסט בלבד.

הדוגמה הבאה מראה כיצד להפוך תמונת צורה לדימוי JPEG בנפרד מהמסמכים ולהציל אותו לדיסק:

חידוש גודל צורה

The The The ShapeRenderer הכיתה מספקת גם פונקציונליות כדי לשחזר את גודל הצורה בפיקסלים דרך GetSizeInPixels שיטה. שיטה זו מקבלת שני פרמטרים צפים (Single) - הגודל ו DPI, אשר משמשים בחישוב גודל הצורה כאשר הצורה ניתנת. השיטה מחזירה את Size אובייקט, המכיל את רוחב וגובה של גודל מחושב. זה שימושי כאשר הוא נדרש לדעת את הגודל של הצורה הניתנת מראש, למשל בעת יצירת Bitmap חדש מן הפלט שניתנו.

הדוגמה הבאה מראה כיצד ליצור אובייקט חדש של Bitmap וגרפיקה עם רוחב וגובה של הצורה להיות:

מתי להשתמש RenderToSize או RenderToScale שיטות, גודל התמונה המתקבל גם הוא SizeF אובייקט. זה יכול להיות מוקצה למשתנה ולהשתמש בו במידת הצורך.

The The The SizeInPoints הנכס מחזיר את גודל הצורה נמדד בנקודות (ראה ShapeRenderer. התוצאה היא SizeF אובייקט המכיל את רוחב וגובה.