Gratis Go-bibliotek for opprettelse av EPUB-dokumenter
Open Source Go-bibliotek for å lage EPUB-filer. Det inkluderer støtte for å legge til CSS, bilder og skrifttyper.
Go-EPUB er et svært nyttig open source Go-bibliotek som gjør det mulig for programvareutviklere å enkelt lage EPUB-filer i sine egne Go-applikasjoner. Biblioteket er svært godt dokumentert, og alle feilmeldinger er selvforklarende. Biblioteket har inkludert svært nyttige funksjoner for håndtering av mediefiler, som å hente media fra en URL, hente media fra lokalt filsystem eller hente media fra et RFC 2397‑kodet skjema.
Go-EPUB-biblioteket er veldig enkelt å bruke og har inkludert flere viktige funksjoner for håndtering av EPUB-dokumenter, som å lage gyldige EPUB 3.0‑filer, legge til bilder i EPUB-filer, støtte for egendefinert CSS, legge til video i EPUB-filer, legge til skrifttyper og bruke EPUB 2.0‑innholdsfortegnelse for maksimal kompatibilitet.
Go-EPUB-biblioteket støtter EPUBCheck-verktøyet som lar brukere sjekke en EPUB for valideringsfeil. Hvis EPUBCheck er installert lokalt, vil det kjøres sammen med Go-testene. For å bruke EPUBCheck, sørg for at du har Java installert på systemet ditt. Hvis brukere ikke ønsker å installere EPUBCheck lokalt, er det også mulig å manuelt validere EPUB-dokumentene.
Kom i gang med Go-EPUB
For å installere Go-EPUB-biblioteket på systemet ditt, kjør følgende kommando.
Installer PDF via GitHub
go get https://github.com/iditectweb/pdf.gitDu kan også installere det manuelt; last ned de nyeste utgivelsesfilene direkte fra GitHub-repoet.
Generer EPUB-fil ved hjelp av Go API
Det åpne kildekodebiblioteket Go-EPUB har inkludert full funksjonalitet for å lage EPUB-dokumenter i sin egen Go-applikasjon med bare noen få linjer med Go-kommandoer. Biblioteket har levert flere viktige funksjoner knyttet til dokumentoppretting, som å sette forfatter, legge til ny seksjon i dokumentet, sette inn bilder i dokumentet, anvende tekstformatering og stil, legge til ønskede skrifttyper, og mye mer.
Opprett ny EPUB-fil via Go-biblioteket
// Create a new EPUB
e := epub.NewEpub("My title")
// Set the author
e.SetAuthor("Hingle McCringleberry")
// Add a section
section1Body := `Seksjon 1
Dette er et avsnitt.
`
e.AddSection(section1Body, "Section 1", "", "")
// Write the EPUB
err = e.Write("My EPUB.epub")
if err != nil {
// handle error
}
Legg til bilde i EPUB-filer via Go API
Det åpne kildekodebiblioteket Go-EPUB gjør det mulig for programmerere å legge til bilder i sine EPUB-dokumenter i Go-applikasjoner. Biblioteket inkluderer mange metoder for å sette inn bilder i en EPUB-fil, for eksempel ved å bruke en URL eller en full sti til en lokal bildefil, eller ved en innebygd data-URL. I begge tilfeller vil bildefilen bli hentet og lagret i EPUB-dokumentet. Det interne filnavnet vil bli brukt når bildefilen lagres i EPUB og må være unikt blant alle bildefiler.
Hvordan legge til bilde i EPUB-fil via Go API
e := epub.NewEpub("My title")
// Add an image from a local file
img1Path, err := e.AddImage("testdata/gophercolor16x16.png", "go-gopher.png")
if err != nil {
log.Fatal(err)
}
// Add an image from a URL. The filename is optional
img2Path, err := e.AddImage("https://golang.org/doc/gopher/gophercolor16x16.png", "")
if err != nil {
log.Fatal(err)
}
fmt.Println(img1Path)
fmt.Println(img2Path)
Legg til CSS og skrifttyper i EPUB-filer via Go API
Go-EPUB-biblioteket gir programvareutviklere muligheten til å legge til egendefinert CSS samt skrifttyper etter eget valg i sine EPUB-dokumenter. På samme måte som med bilder lar biblioteket deg bruke enten en URL, en sti til en lokal fil, eller en innebygd data-URL for å sette inn CSS eller skrifttype i en EPUB-fil. Vennligst husk at det interne filnavnet vil bli brukt når skrifttypefilen lagres i EPUB.
Legg til CSS i EPUB-dokumenter ved hjelp av Go API
// Add CSS
css1Path, err := e.AddCSS("testdata/cover.css", "epub.css")
if err != nil {
log.Fatal(err)
}
// The filename is optional
css2Path, err := e.AddCSS("testdata/cover.css", "")
if err != nil {
log.Fatal(err)
}
// Use the CSS in a section
sectionBody := ` Seksjon 1
Dette er et avsnitt.
`
e.AddSection(sectionBody, "Section 1", "", css1Path)
fmt.Println(css1Path)
fmt.Println(css2Path)