--- title: useCanvas description: Attache le rendu CanvasKit à un élément canvas pour un éditeur OpenPencil. --- # useCanvas `useCanvas()` connecte un éditeur à un vrai élément ``. Il gère : - l'initialisation de CanvasKit - la création de surface - la planification du rendu - la gestion du redimensionnement - la visibilité optionnelle des règles - le callback de disponibilité du renderer ## Utilisation ```ts import { ref } from 'vue' import { useCanvas, useEditor } from '@open-pencil/vue' const canvasRef = ref(null) const editor = useEditor() useCanvas(canvasRef, editor) ``` ## Exemple de base ```vue ``` ## Exemples pratiques ### Désactiver les règles pour un aperçu intégré ```ts useCanvas(canvasRef, editor, { showRulers: false, }) ``` ### Conserver le tampon de dessin pour les captures d'écran ```ts useCanvas(canvasRef, editor, { preserveDrawingBuffer: true, }) ``` ## Notes - `useCanvas()` est orienté renderer et pratiquement uniquement côté navigateur - il est responsable du pipeline canvas en direct, pas des flux de fichiers au niveau applicatif - il devrait généralement être associé à `useCanvasInput()` pour la gestion des interactions ## API associées - [useEditor](./use-editor) - [useCanvasInput](./use-canvas-input) - [useTextEdit](./use-text-edit) ## Type ```ts interface UseCanvasOptions { showRulers?: boolean preserveDrawingBuffer?: boolean onReady?: () => void } function useCanvas( canvasRef: Ref, editor: Editor, options?: UseCanvasOptions, ): void ```