(defun append-at (editor alignment string) (q+:append editor string) (let* ((cursor (q+:text-cursor editor)) (block-format (q+:block-format cursor))) (setf (q+:alignment block-format) alignment (q+:block-format cursor) block-format))) (defun svg-pixmap (pathname &key (scale 1) (renderer nil rendererp)) (flet ((%svg-pixmap (svg-namestring scale renderer) (q+:load renderer svg-namestring) (let* ((size (q+:default-size renderer)) (x (q+:width size)) (y (q+:height size)) (pixmap (q+:make-qpixmap (round (* scale x)) (round (* scale y))))) (with-finalizing ((color (q+:make-qcolor 0 0 0 0))) (q+:fill pixmap color)) (with-finalizing ((painter (q+:make-qpainter pixmap))) (q+:render renderer painter (q+:make-qrectf (q+:rect pixmap)))) pixmap))) (let ((namestring (uiop:native-namestring pathname))) (if rendererp (%svg-pixmap namestring scale renderer) (with-finalizing ((renderer (q+:make-qsvgrenderer))) (%svg-pixmap namestring scale renderer))))))