Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,21 @@

Todos los cambios relevantes de este proyecto se documentan aquí.

## 0.0.7 - 2026-08-24

### Corregido

- El marco azul de edición de texto pasa a ser el área real del contenido editable.
- El editor deja de autoagrandarse al abrir: primero coincide con la selección y solo cambia de tamaño cuando el usuario lo redimensiona.
- La selección parcial se calcula por impacto contra los rectángulos y offsets reales de cada carácter, sin depender del layout de texto del navegador.
- El editor de texto se puede redimensionar en anchura y altura; su anchura pasa al motor y controla el reflow al aplicar.
- PDF, texto, imágenes, tablas y Fabric comparten la transformación exacta del pixmap renderizado, incluido su origen de píxel.
- Las tablas guardan y recuperan su rectángulo exacto; las tablas antiguas lo reconstruyen desde sus trazos Ink.
- Al aumentar o reducir la altura de una tabla, el texto posterior del mismo flujo se desplaza en la misma medida.
- El marco temporal de redimensionado se elimina al cancelar, cambiar de herramienta o seleccionar otro objeto.
- Nuevo icono `images/icon.png` de 256 × 256 en el estilo visual azul marino del Marketplace de Alexey SuzDalenko.
- La barra de edición muestra `v0.0.7` para comprobar la versión instalada.

## 0.0.6 - 2026-08-24

### Corregido
Expand Down
29 changes: 18 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Editor visual de PDF gratuito para Visual Studio Code, construido en JavaScript con MuPDF.js y Fabric.js.

La versión `0.0.6` se concentra en una tarea: **seleccionar y editar directamente el contenido visible de forma natural, con geometría alineada al PDF**. Abre el PDF como una pestaña editable de VS Code y participa en el ciclo normal de Guardar, Guardar como, Deshacer, Rehacer, recuperación y copias de seguridad.
La versión `0.0.7` se concentra en una tarea: **hacer que el marco azul sea el área real del objeto editable, con geometría alineada al PDF**. Abre el PDF como una pestaña editable de VS Code y participa en el ciclo normal de Guardar, Guardar como, Deshacer, Rehacer, recuperación y copias de seguridad.

> Conserva una copia del documento original cuando trabajes con archivos importantes. Un PDF describe objetos colocados en coordenadas y no siempre contiene párrafos equivalentes a los de Word; esta extensión reconstruye bloques editables a partir de la estructura visual detectada por MuPDF.

Expand All @@ -11,9 +11,10 @@ La versión `0.0.6` se concentra en una tarea: **seleccionar y editar directamen
- Hacer clic sobre una línea selecciona solo esa línea; arrastrar selecciona exactamente palabras o frases, sin rectángulos gigantes.
- La selección visual usa los rectángulos de caracteres extraídos del PDF para ajustarse al contenido real.
- Arrastrar sobre una palabra o frase y editar, borrar, copiar o cambiar su formato.
- Editar un párrafo completo con `Editar contenido`.
- Mover o redimensionar un bloque de texto con `Mover / redimensionar`.
- Editar un párrafo completo con `Editar contenido`; el marco azul coincide con el área real y se puede redimensionar.
- Mover o redimensionar un bloque de texto con `Mover / redimensionar bloque`.
- Al cambiar la anchura de un bloque, el texto se recompone dentro del nuevo ancho.
- El editor azul conserva inicialmente la geometría exacta de la selección y permite redimensionar anchura y altura; la anchura controla el reflow y la altura final se calcula según el contenido.
- Añadir texto en cualquier punto de la página.
- Cambiar o borrar el contenido real de un bloque.
- Cambiar Helvetica/Times/Courier, tamaño, color, negrita, cursiva y alineación.
Expand All @@ -31,6 +32,7 @@ Al aplicar una edición, MuPDF elimina físicamente el texto anterior, calcula l
- Insertar PNG, JPEG, WebP, BMP, GIF o TIFF en cualquier posición.
- Insertar una imagen entre párrafos y desplazar automáticamente el texto inferior.
- Mover y redimensionar imágenes insertadas.
- El marco de una imagen insertada usa la misma transformación exacta que el píxel renderizado del PDF.
- Eliminar imágenes insertadas.
- Seleccionar y eliminar permanentemente una imagen original del PDF.

Expand All @@ -39,8 +41,11 @@ Al aplicar una edición, MuPDF elimina físicamente el texto anterior, calcula l
- Elegir el número de filas y columnas al crear la tabla.
- Insertar la tabla entre párrafos sin cubrir el contenido existente.
- Dibujar su zona directamente sobre la página.
- Seleccionar una tabla creada, moverla y redimensionarla.
- Seleccionar una tabla creada, moverla y redimensionarla con un marco que coincide exactamente con la cuadrícula.
- La geometría exacta de cada tabla se conserva en sus metadatos, evitando que el marco de selección se desplace respecto a la cuadrícula.
- Las tablas creadas por versiones anteriores recuperan esa geometría directamente desde sus trazos PDF.
- El marco de edición de la tabla comparte el mismo sistema de coordenadas que el PDF renderizado.
- Al cambiar la altura de una tabla, el texto posterior del mismo flujo se desplaza para conservar el espacio.
- Cambiar posteriormente filas, columnas, color y grosor de línea.
- Eliminar la tabla completa con `Eliminar` o la tecla `Delete`.
- Añadir texto editable independiente dentro de cada celda con `Añadir texto`.
Expand All @@ -57,18 +62,20 @@ Al aplicar una edición, MuPDF elimina físicamente el texto anterior, calcula l
- Guardado incremental o limpio, según la configuración.
- Guardar, Guardar como, Deshacer, Rehacer y recuperación nativos de VS Code.
- Todo el procesamiento ocurre localmente; el documento no se envía a ningún servidor.
- La barra de edición muestra `v0.0.7` para poder comprobar visualmente que está instalada la versión correcta del VSIX.

## Uso rápido

1. Abre un archivo `.pdf` en VS Code.
2. Si se abre otro visor, usa el menú contextual y elige **Open with PDF Viewer & Editor**.
3. Haz clic en una línea para seleccionar esa línea, o arrastra sobre cualquier palabra o frase.
4. Pulsa `Editar selección` o `Editar contenido`; al aplicar, el texto inferior se recoloca.
5. Usa `Mover / redimensionar` para cambiar la posición o anchura del bloque de texto.
6. Cambia el tamaño de fuente: la selección se recompone y el contenido inferior se desplaza.
7. Usa el punto `+` entre párrafos para insertar texto, imagen o tabla sin solapar nada.
8. También puedes usar `Añadir texto`, `Imagen` o `Tabla` para colocar contenido libremente.
9. Guarda con `Ctrl/Cmd+S`.
4. Pulsa `Editar selección` o `Editar contenido`; el editor azul se abre sobre la zona real correspondiente.
5. Redimensiona el marco azul si quieres modificar la anchura o altura disponible para el texto.
6. Usa `Mover / redimensionar bloque` para cambiar la posición o anchura del bloque de texto completo.
7. Cambia el tamaño de fuente: la selección se recompone y el contenido inferior se desplaza.
8. Usa el punto `+` entre párrafos para insertar texto, imagen o tabla sin solapar nada.
9. También puedes usar `Añadir texto`, `Imagen` o `Tabla` para colocar contenido libremente.
10. Guarda con `Ctrl/Cmd+S`.

| Acción | Atajo |
|---|---|
Expand Down Expand Up @@ -109,7 +116,7 @@ npm run package
| `npm run typecheck` | Comprueba el host de la extensión con TypeScript `checkJs` |
| `npm test` | Ejecuta pruebas unitarias y de integración contra MuPDF/WASM |
| `npm run check` | Ejecuta lint, typecheck y pruebas |
| `npm run package` | Genera `pdf-viewer-editor-0.0.6.vsix` |
| `npm run package` | Genera `pdf-viewer-editor-0.0.7.vsix` |

El script `prepare` copia MuPDF y Fabric a `media/vendor`; esa carpeta se genera y no se versiona.

Expand Down
Binary file modified images/icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading