Я использую WkwebView в приложении для iOS, чтобы отображать и манипулировать некоторым HTML -контентом. В определенный момент я генерирую PDF из отображаемого HTML в Wkwebview. Проблема, с которой я сталкиваюсь, включает в себя изображения, которые динамически загружаются в DOM. Однако при генерации PDF в iOS из WkWebView изображения получают отрезание на случайных высотах на основе размера страницы и положения изображения. < /P>
Как я могу избежать разрыва изображений по страницам при генерации PDF в iOS из WkWebView? или решения будут высоко оценены!func createPdf(completion: @escaping (PDFDocument?) -> Void) {
let formatter: UIViewPrintFormatter = self.viewPrintFormatter()
let render = UIPrintPageRenderer()
render.addPrintFormatter(formatter, startingAtPageAt: 0)
let page = CGRect(x: 0, y: 0, width: 595.2, height: 841.8)
let printableWidth = page.width - 2 * 32
let printableHeight = page.height - 2 * 64
let printable = CGRect(x: 32, y: 32, width: printableWidth, height: printableHeight)
render.setValue(NSValue(cgRect: page), forKey: "paperRect")
render.setValue(NSValue(cgRect: printable), forKey: "printableRect")
let pdfData = NSMutableData()
UIGraphicsBeginPDFContextToData(pdfData, CGRect.zero, nil)
for i in 0.. 0 {
let pageNumber = i
let footerText = "Page \(pageNumber)"
let attributes: [NSAttributedString.Key: Any] = [
.font: UIFont.systemFont(ofSize: 12),
.foregroundColor: UIColor.black
]
let textSize = footerText.size(withAttributes: attributes)
let textRect = CGRect(
x: bounds.width - textSize.width - 32,
y: bounds.height - textSize.height - 20,
width: textSize.width,
height: textSize.height
)
footerText.draw(in: textRect, withAttributes: attributes)
}
}
UIGraphicsEndPDFContext()
completion(PDFDocument(data: pdfData as Data))
}
Подробнее здесь: https://stackoverflow.com/questions/789 ... iew-in-ios
Как избежать разрывов изображения при генерации PDF -файлов от WkwebView в iOS? ⇐ Html
Программисты Html
1750976376
Anonymous
Я использую WkwebView в приложении для iOS, чтобы отображать и манипулировать некоторым HTML -контентом. В определенный момент я генерирую PDF из отображаемого HTML в Wkwebview. Проблема, с которой я сталкиваюсь, включает в себя изображения, которые динамически загружаются в DOM. Однако при генерации PDF в iOS из WkWebView изображения получают отрезание на случайных высотах на основе размера страницы и положения изображения. < /P>
Как я могу избежать разрыва изображений по страницам при генерации PDF в iOS из WkWebView? или решения будут высоко оценены!func createPdf(completion: @escaping (PDFDocument?) -> Void) {
let formatter: UIViewPrintFormatter = self.viewPrintFormatter()
let render = UIPrintPageRenderer()
render.addPrintFormatter(formatter, startingAtPageAt: 0)
let page = CGRect(x: 0, y: 0, width: 595.2, height: 841.8)
let printableWidth = page.width - 2 * 32
let printableHeight = page.height - 2 * 64
let printable = CGRect(x: 32, y: 32, width: printableWidth, height: printableHeight)
render.setValue(NSValue(cgRect: page), forKey: "paperRect")
render.setValue(NSValue(cgRect: printable), forKey: "printableRect")
let pdfData = NSMutableData()
UIGraphicsBeginPDFContextToData(pdfData, CGRect.zero, nil)
for i in 0.. 0 {
let pageNumber = i
let footerText = "Page \(pageNumber)"
let attributes: [NSAttributedString.Key: Any] = [
.font: UIFont.systemFont(ofSize: 12),
.foregroundColor: UIColor.black
]
let textSize = footerText.size(withAttributes: attributes)
let textRect = CGRect(
x: bounds.width - textSize.width - 32,
y: bounds.height - textSize.height - 20,
width: textSize.width,
height: textSize.height
)
footerText.draw(in: textRect, withAttributes: attributes)
}
}
UIGraphicsEndPDFContext()
completion(PDFDocument(data: pdfData as Data))
}
Подробнее здесь: [url]https://stackoverflow.com/questions/78950013/how-to-avoid-image-breaks-when-generating-pdfs-from-wkwebview-in-ios[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия