שאלות נפוצות שואלים

שאלות נפוצות שואלים

רישיון ומקור פתוח

מהו רישיון עבור Aspose.PDF FOSS for Go?

Aspose.PDF FOSS for Go is released under the רישיון MIT.הטקסט המלא של הרישיון הוא הוצגו במאגר ב github.com/aspose-pdf-foss/asspose - pdf-for-go. אין צורך בהרשמה, קובץ הפעלה או מפתח זמן עבודה.

האם אני יכול להשתמש ב-Aspose.PDF FOSS כדי ללכת במוצר מסחרי?

כן. רישיון MIT מאפשר שימוש מסחרי בלתי מוגבל, שינוי, הפצה ושימוש פרטי.אתה חייב לכלול את ההודעה על זכויות יוצרים ואת טקסט הרישיונות של MIT בכל העותקים או החלקים העיקריים של התוכנה.

האם יש גרסה עסקית?

Aspose.PDF FOSS is the open-source, MIT-licensed edition. A separate commercial Aspose.PDF product is available as the Aspose.PDF — Enterprise Product Family עם תמיכה עסקית, כיסוי פורמט מורחב ואינטגרציה ענן.


התקנה ודרישות

כיצד ניתן להתקין את Aspose.PDF FOSS עבור Go?

הוסף את המודול לפרויקט שלך:

go get github.com/aspose-pdf-foss/aspose-pdf-foss-for-go

להזין אותו עם אליאס בקובץ המקור שלך:

import pdf "github.com/aspose-pdf-foss/aspose-pdf-foss-for-go"

איזה גרסה נדרשת?

1.24 או מאוחר יותר נדרש.בדוק את הגירסה שלך עם go version.

האם יש ספרייה מקומית או מערכת תלויות?

Aspose.PDF FOSS for Go הוא יישום של GO טהור ללא C, C++ או CGo תלויות.


שימוש באש

איך אני יכול לפתוח PDF קיימת?

שימוש pdf.Open עבור PDF סטנדרטי ו pdf.OpenWithPassword עבור קבצים מוגנים באמצעות סיסמה:

doc, err := pdf.Open("document.pdf")
if err != nil {
    panic(err)
}
fmt.Println(doc.PageCount())

כיצד ניתן לחלק את PDF לדפים בודדים?

Document.Split חוזר א []*Document,אחד על הדף:

doc, _ := pdf.Open("report.pdf")
pages, _ := doc.Split()
for i, p := range pages {
    p.Save(fmt.Sprintf("page_%03d.pdf", i+1))
}

איך אני יכול לשלב PDFs מרובים?

Document.Append להוסיף מסמך מקור באתר:

base, _ := pdf.Open("part1.pdf")
part2, _ := pdf.Open("part2.pdf")
base.Append(part2)
base.Save("combined.pdf")

כיצד ניתן למלא שדה AcroForm?

שימוש Document.Form().Field(name) ובהתאם לסוג המפורט:

doc, _ := pdf.Open("form.pdf")
text := doc.Form().Field("customer_name").(*pdf.TextBoxField)
text.SetValue("Jane Doe")

check := doc.Form().Field("agree").(*pdf.CheckboxField)
check.SetChecked(true)

doc.Save("form_filled.pdf")

סוגים של שדות תומכים: TextBoxField, CheckboxField, RadioButtonField, ComboBoxField, ListBoxField, ButtonField.

איך אני מוסיף ספרות?

יצירת A OutlineItemCollection ו- Set A Destination:

doc, _ := pdf.Open("manual.pdf")
page, _ := doc.Page(1)

bm := pdf.NewOutlineItemCollection(doc)
bm.SetTitle("Chapter 1")
bm.SetDestination(pdf.NewDestinationXYZ(page, 0, 800, 1.0))
doc.Outlines().Add(bm)
doc.Save("manual_with_bookmarks.pdf")

אבטחה וחישוב

כיצד ניתן להגן על PDF?

שימוש Document.SetEncryption עם א EncryptionOptions מספק סיסמה למשתמש כדי לפתוח את הקובץ וסיסמת הבעלים עבור זכויות שינוי:

doc, _ := pdf.Open("doc.pdf")
doc.SetEncryption(pdf.EncryptionOptions{
    UserPassword:  "userpass",
    OwnerPassword: "ownerpass",
    Permissions:   &pdf.Permissions{AllowPrint: true, AllowCopy: false},
})
doc.Save("doc_protected.pdf")

אילו אלגוריתםים של הצפנה נתמכים?

3 אלגוריתם זמין באמצעות EncryptionOptions.Algorithm:

אלגוריתםקבועסטנדרטים
AES-128EncryptionAlgAES128 (הדפסה שלISO 32000-1
AES-256EncryptionAlgAES256ISO 32000-2 (תוצאה PDF 2.0)
RC4-128EncryptionAlgRC4_128מורשת

כיצד ניתן לפתוח קובץ מוגן באמצעות סיסמה?

שימוש pdf.OpenWithPassword כאשר הקובץ דורש זיהוי.עביר את הסיסמה של המשתמש כאל הגורם השני; הוא חוזר לדרך הנורמלית *Document לאחר הפסקת האש, הצלחה:

doc, err := pdf.OpenWithPassword("protected.pdf", "userpass")
if err != nil {
    panic(err)
}
fmt.Println(doc.PageCount())

כיצד ניתן להסיר הצפנה מ- PDF?

שיחת טלפון Document.RemoveEncryption לאחר פתיחת הקובץ עם הסיסמה הנכונה, שמור את התוצאה כדי לכתוב עותק לא מוצפן:

doc, _ := pdf.OpenWithPassword("protected.pdf", "userpass")
doc.RemoveEncryption()
doc.Save("decrypted.pdf")

רנדרינג וטקסט

איך אני יכול להביא דף PDF לתמונה?

השתמשו באחד מהסוגים של המכשיר: BmpDevice, PngDevice, JpegDevice, TiffDevice,או GifDevice.• תכנן את המכשיר עם A Resolution ערך וקרא את המתאים Render* שיטת עם א io.Writer ו RenderOptions:

doc, _ := pdf.Open("report.pdf")
page, _ := doc.Page(1)
f, _ := os.Create("page1.png")
defer f.Close()
page.RenderPNG(f, pdf.RenderOptions{DPI: 150})

איך אני מחפש את הטקסט ב- PDF?

שיחת טלפון Document.SearchText עם רצועת שאלה ו SearchOptions.התוצאה היא א סליקה של TextMatch ערכים – כל אחד מהם נושא את הטקסט המתאים, מדד הדף שלו, ואת קופסה גבולות.

doc, _ := pdf.Open("doc.pdf")
matches, _ := doc.SearchText("total", pdf.SearchOptions{CaseInsensitive: true})
for _, m := range matches {
    fmt.Printf("page %d: %q\n", m.PageNumber, m.Text)
}

איך אני מפרט צורה?

שיחת טלפון Document.Flatten לאחר השלמת או ביקורת על טופס.השיטה מחזיקה את כל שדה ערכים לתוך הדף גרפיקה ומסיר את שדות הצורה האינטראקטיבי:

doc, _ := pdf.Open("filled.pdf")
doc.Flatten()
doc.Save("flat.pdf")

הגבלות ידועות

האם כל תכונות PDF תומכות?

הספרייה מכסה את הפעולות הנפוצות ביותר של ניהול מסמכים: פתיחה, יצירה, שמירה , חלוקה, שילוב, גיבוי דף, הצפנה, AcroForms, טבלאות, תוויות ספרים, הערות , רנדרינג לתמונה, חיפוש טקסט ופורמט. תכונות מתקדמות כגון חתימות דיגיטליות, תוכן 3D, והפוך PDF / A לא יכול להיות מיושם במלואו בגרסה הנוכחית.

מה יקרה אם אני משתמש בהצהרת סוג שדה שאינה תואמת?

סוג של הצהרה על Field זה לא תואם את סוג השדה האמיתי יהיה פאניקה. שימוש pdf.FieldType(f) כדי לבדוק את הסוג לפני הצהרת, או להשתמש סורק סוג:

doc, _ := pdf.Open("form.pdf")
for _, f := range doc.Form().Fields() {
    switch v := f.(type) {
    case *pdf.TextBoxField:
        fmt.Println("text:", v.Value())
    case *pdf.CheckboxField:
        fmt.Println("checked:", v.Checked())
    }
}
 עברית