Я хотел бы растеризовать исходный файл PDF (в данном случае в PNG, 500x500 пикселей), используя эти привязки golang для ImageMagick6.В CLI я могу сделать это, используя
convert -density 5000 -define psd:fit-page=500x test.pdf -resize 500x test.png
, что приводит к плавно отображаемому изображению.
Что мне не удается сделать сейчас, так это произвести нечто подобное с использованием API:либо полученное изображение имеет масштабированные пиксели, либо оно размыто и имеет размер 500x500 пикселей, либо оно имеет «оригинальный» размер.
Вот минимальный фрагмент кода моей игровой площадки:
package main
import "gopkg.in/gographics/imagick.v2/imagick"
func main() {
imagick.Initialize()
defer imagick.Terminate()
mw := imagick.NewMagickWand()
defer mw.Destroy()
mw.SetImageResolution(5000,5000)
mw.SetOption("psd:fit-page", "500x")
mw.ReadImage("test.pdf")
mw.ResizeImage(500, 500, imagick.FILTER_POINT, 1)
mw.SetIteratorIndex(0) // This being the page offset
mw.SetImageFormat("png")
mw.WriteImage("test.png")
}
Меня смутили плотность , размер изображения , разрешение изображения и размер холста Полагаю.Как это предполагается использовать?