Anonymous
Как я могу преобразовать диаграмму (линия, столбец, круговая диаграмма...) в формат PDF в реакции Native (expo)?
Сообщение
Anonymous » 20 окт 2025, 20:18
Я использовал **react-native-gifted-charts **, чтобы создать несколько диаграмм в своем **react-native expo **приложении.
Я хочу реализовать кнопку загрузки, где пользователь может сохранить диаграммы в формате PDF вместе с текстом описания.
Пример диаграммы
Вот моя функция
GeneratePDF
/>
Код: Выделить всё
const generatePDF = async () => {
setIsLoading(true);
try {
const html = `
const ctx = document.getElementById('myChart');
new Chart(ctx, {
type: 'bar',
data: {
labels: ['Red', 'Blue', 'Yellow', 'Green', 'Purple', 'Orange'],
datasets: [{
label: '# of Votes',
data: [12, 19, 3, 5, 2, 3],
borderWidth: 1
}]
},
options: {
scales: {
y: {
beginAtZero: true
}
}
}
});
`;
const options = {
html,
fileName: `Testing`,
directory: `Testing`,
};
const file = await RNHTMLtoPDF.convert(options);
Alert.alert('Success', `PDF saved to ${file.filePath}`, [
{
text: 'OK',
onPress: () => navigation.popToTop()
}
]);
setCount(count + 1);
setIsLoading(false);
} catch (error) {
Alert.alert('Error', error.message)
}
};
И вот как я это называю.
Код: Выделить всё
React.useEffect(() => {
navigation.setOptions({
headerRight: () => (
)
})
}, []);
Я пробовал использовать
react-native-html-to-pdf и
chart.js , но PDF-файл оказался пустым.
Подробнее здесь:
https://stackoverflow.com/questions/797 ... -nativeexp
1760980726
Anonymous
Я использовал **react-native-gifted-charts **, чтобы создать несколько диаграмм в своем **react-native expo **приложении. Я хочу реализовать кнопку загрузки, где пользователь может сохранить диаграммы в формате PDF вместе с текстом описания. Пример диаграммы Вот моя функция [b]GeneratePDF[/b] />[code]const generatePDF = async () => { setIsLoading(true); try { const html = ` const ctx = document.getElementById('myChart'); new Chart(ctx, { type: 'bar', data: { labels: ['Red', 'Blue', 'Yellow', 'Green', 'Purple', 'Orange'], datasets: [{ label: '# of Votes', data: [12, 19, 3, 5, 2, 3], borderWidth: 1 }] }, options: { scales: { y: { beginAtZero: true } } } }); `; const options = { html, fileName: `Testing`, directory: `Testing`, }; const file = await RNHTMLtoPDF.convert(options); Alert.alert('Success', `PDF saved to ${file.filePath}`, [ { text: 'OK', onPress: () => navigation.popToTop() } ]); setCount(count + 1); setIsLoading(false); } catch (error) { Alert.alert('Error', error.message) } [/code] }; И вот как я это называю. [code]React.useEffect(() => { navigation.setOptions({ headerRight: () => ( ) }) [/code] }, []); Я пробовал использовать [b]react-native-html-to-pdf[/b] и [b]chart.js[/b], но PDF-файл оказался пустым. Подробнее здесь: [url]https://stackoverflow.com/questions/79786516/how-can-i-convert-a-chartline-bar-pie-to-a-pdf-format-in-react-nativeexp[/url]