Skip to content

Importer et exporter un document ​

L’import/export est utile lorsqu’un utilisateur reçoit un document bureautique mais souhaite ensuite le travailler en Markdown, ou lorsqu’il faut produire un fichier à transmettre en dehors de l’application.

Formats disponibles ​

ActionFormats
ImporterDOCX, PDF
ExporterMarkdown, HTML, JSON, DOCX, PDF

Afficher les commandes dans l’éditeur ​

vue
<NfzNotionMarkdownEditor
  v-model="markdown"
  :enable-document-import="true"
  :enable-document-export="true"
  :document-export-formats="['markdown', 'docx', 'pdf']"
/>

documentExportFormats permet de ne montrer que les formats utiles à votre application.

Dans le dialogue d’import, choisissez de remplacer le contenu courant ou d’ajouter le document à la fin. Après l’import, le contenu Markdown est mis à jour et l’événement documentImport fournit le résultat de la conversion.

Limiter et annuler un import ​

Les imports intégrés appliquent la même politique de sécurité HTML/URL que l’aperçu de l’éditeur. Par défaut, un fichier de plus de 25 Mio est refusé avant le parsing.

Pour un import programmatique, vous pouvez ajuster la limite et fournir un AbortSignal :

ts
const controller = new AbortController()

await editorRef.value?.importDocument(file, {
  maxFileSizeBytes: 10 * 1024 * 1024,
  signal: controller.signal
})

// Annulation possible depuis votre UI
controller.abort()

Un adaptateur personnalisé reçoit les mêmes options. Il doit lui aussi respecter signal lorsqu’il effectue un traitement distant ou long.

Confier le traitement à votre backend ​

Pour des documents sensibles, volumineux ou soumis à des règles métier, utilisez documentImportAdapter et documentExportAdapter. Votre application peut alors envoyer le traitement vers une API, un service Feathers ou une file de tâches, puis renvoyer le résultat à l’éditeur.

WARNING

Un import DOCX ou PDF est une conversion. Les mises en page bureautiques très complexes ne peuvent pas toujours être reproduites à l’identique en Markdown.

NFZ Notion Markdown Editor