-
isBIM Visus 2D 1.1.0 Stable
released this
2026-07-08 23:46:29 +01:00 | 0 commits to main since this releaseAdicionado
- Toggle global de visibilidade das anotações (pedido do Rui). Botão "olho"
na toolbar (junto ao botão Anotar) e acção no cabeçalho do painel de anotações
ligam/desligam todas as anotações como se fosse um layer — sem as apagar.
Novo storeannotationsVisible(stores/app.ts); aCanvasOverlaydeixa de
montar aAnnotationsLayerquando está desligado. Entrar no modo de anotação
força a visibilidade (não faz sentido editar anotações ocultas). i18n
toolbar.hideAnnotations/showAnnotations,measure.hideAll/showAll. - Exportação de markup PDF nativo e universal (
/Annot) com aparências. As
anotações (cotas, áreas, setas, nuvens de revisão, elipses, texto…) passam a
ser embebidas no PDF como objectos/Annotnativos com appearance stream
(/AP /N→ Form XObject) — legíveis e editáveis no Adobe Acrobat, Bluebeam
Revu, Preview do macOS (que exige/AP), Foxit e qualquer outro leitor de
PDF (já não só no sidecar JSON proprietário do DWFx). A aparência desenha o
markup em coordenadas absolutas de página (/BBox=/Rect,/Matrix
identidade): linhas com pontas de seta, polilinhas/polígonos, nuvem festonada
(bumps cúbicos), elipses (Bézier), traço sólido/tracejado/pontilhado, e texto
em Helvetica (WinAnsi). Cobre os comandos Guardar como PDF, Exportar
PDF (diálogo) e o wrapper de exportação.
Mapeamento: linha→Line, seta→Line+/LE, polilinha→PolyLine(ou
Polygonse fechada), polígono/área→Polygon(+/ICse preenchido),
nuvem→Polygon+/BE(cloudy), elipse/círculo→Circle, ângulo→PolyLine,
arco→PolyLineachatada por 3 pontos, texto→FreeText. Cores, estilos de
traço (sólido/tracejado/pontilhado/traço-ponto) e espessura preservados. - Leitura de markup PDF
/Annot(round-trip fechado). Ao abrir um PDF, os
objectos/Annotnativos são importados como anotações editáveis no
isBIM Visus:Line→linha (ou seta, se/LEtiver pontas),PolyLine→
polilinha,Polygon→polígono (+nuvem se/BEcloudy, +preenchido se/IC),
Square→polígono (4 cantos),Circle→elipse,FreeText→texto,Ink→
polilinha. Cor (/C, incl. CMYK→RGB), espessura/estilo de traço (/BS) e
texto (/Contents, UTF-16BE ou Latin-1) recuperados. Coordenadas pt→DIP com
flip Y e origem da caixa (MediaBox/CropBox). Markup criado no Acrobat,
Bluebeam ou no próprio isBIM Visus pode agora ser reaberto e editado.
Detalhe técnico
- Nova crate-API em
visus2d-pdf: móduloannot.rscomPdfMarkup+
inject_annotations()(pós-processamento dos bytes PDF vialopdf0.31 —
promovida de dev- a dependência normal), gerador de appearance streams
(Form XObjects, fonte Helvetica partilhada), eexport_document_annotated()/
inject_into_export()emdocument.rs. Conversão de coordenadas px@96→pt com
flip Y idêntica ao conteúdo de página (units.rs), garantindo coincidência ao
pixel. Funciona em ambos os pipelines (vectorial e raster legacy). - IPC:
export_pdfesave_as_pdfganham o parâmetro opcionalannotations
(Vec<AnnotationInfo>);commands/export.rs::annotations_to_markupsconverte
o modelo IPC emPdfMarkup(mantém a semântica das pontas de seta e do
modificador de nuvem). Frontend:tauri.ts(exportPdf/saveAsPdf/saveAsDwfx
partilhamannotationsPayload) eExportPdfDialogenviam o snapshot do store.
Alterado
- Toolbar de ficheiro reorganizada. O par Abrir/Guardar fica separado
por divisores de Novo / Exportar / Imprimir, clarificando o modelo de formatos
nativos (Abrir lê DWFx/PDF · Guardar grava DWFx-projecto · Exportar gera PDF).
Botões mantêm-se só-ícone (uniformidade com a linha isBIM); a distinção é
por tooltip descritiva. - Acções de PDF fundidas. O botão "Guardar como PDF" (gravação directa) foi
removido — fazia o mesmo que Exportar PDF, que passa a ser a única acção
de PDF (diálogo com DPI/páginas/modo + markup/Annot). O comando IPC
save_as_pdfmantém-se como API programática.
Corrigido
- Ecrã de arranque: o texto de arrastar-e-largar mencionava DWF, que o
visualizador não abre. Passa a indicar apenas DWFx e PDF (pt-PT e en).
Limitações conhecidas
- A aparência do
FreeTextusa Helvetica built-in (sem quebra de linha
automática nem rich text/RC); o texto longo pode exceder a caixa. - A nuvem de revisão preenchida exporta só o contorno festonado (sem o fundo a
12%). - Na leitura, a medição não é recalculada (markup importado entra como forma
livre,markup:true);Inkusa só a 1.ª sub-lista; estilos de traço de PDF
externos colapsam em sólido/tracejado. - Ainda não suportados (próxima paridade com Bluebeam): text markup
(Highlight/Underline/StrikeOut), Stamp, Callout (/CL),/Measure(cotas com
escala),/Popup+respostas (/IRT) e metadados de comentário (/M,
/CreationDate).
Testes
- Escrita:
visus2d-pdf::annottraz 13 testes unitários (flip Y, subtipos por
modo + presença de aparência, pontas de seta, nuvem/BE, preenchimento
/IC,FreeTextcom fonte, curvas de elipse, amostragem de arco, parsing de
cor, escape de texto). Leitura:visus2d-pdf-reader::annotationstraz 7
(Line→linha,/LE→seta,Polygon+/BE→nuvem,Circle→elipse,FreeText
com/sem/Contents, subtipo não suportado ignorado,/C→hex). Pendente
correr no Mac (cargo test --workspace --lib,cargo clippy --workspace --lib,npm run check) — toolchain Rust indisponível no ambiente de
preparação desta release.
Downloads
- Toggle global de visibilidade das anotações (pedido do Rui). Botão "olho"
-
isBIM Visus 2D 1.0.4 Stable
released this
2026-06-21 17:09:09 +01:00 | 0 commits to main since this releaseAdicionado
- Distribuição Windows. Instalador NSIS x64 assinado, com auto-update — corre
nativo em x64 e por emulação em Windows-on-ARM (artefacto universal). Publicado
nas releases Gitea ao lado do macOS.
Alterado
- Instalador em Português europeu (PT-PT) por defeito (antes saía em PT-BR).
Corrigido
- Build determinista cross-OS:
package-lock.jsonpassa a ser versionado (sem
ele o Windows resolvia umrolldownmais estrito e o build divergia do macOS). - Parâmetros opcionais TS (
x?:) em.sveltereescritos parax: T | undefined = undefined(compatível com qualquer parser). - Script de release Windows: artefacto
-setup.exe(Tauri 2.x), localização do
bundle (workspace..\target) e verificação dokey_id.
Downloads
- Distribuição Windows. Instalador NSIS x64 assinado, com auto-update — corre
-
isBIM Visus 2D 1.0.3 Stable
released this
2026-06-21 00:06:33 +01:00 | 0 commits to main since this releaseAdicionado
- Recuperação de licença por email (código OTP). No tab Licenciar, "Não tenho a
chave" envia um código de 6 dígitos para o email associado; ao confirmar, a licença
é recuperada e activada automaticamente nesta máquina. Suportado pelos endpoints
recover/recover/verifydo InforNext (resposta genérica, código de validade curta,
uso único, limite de tentativas). - Botão "Procurar actualizações" no painel de licença — verifica updates a pedido
(antes só no arranque), com feedback (a procurar / já actualizado / disponível / falhou).
Downloads
- Recuperação de licença por email (código OTP). No tab Licenciar, "Não tenho a
-
isBIM Visus 2D 1.0.0 Stable
released this
2026-06-20 17:50:03 +01:00 | 0 commits to main since this releaseAlterado
- Dependências frontend para o latest: Tailwind CSS 3 → 4 (via
@tailwindcss/vite(plugin) +esbuildexplícito + targetesnext+@import 'tailwindcss'+@config '../tailwind.config.js';
autoprefixerremovido), Vite → 8,@sveltejs/vite-plugin-svelte→ 7,
TypeScript → 6,@types/node→ 26, SvelteKit 2.66, Svelte 5.56,svelte-check4.6. - Tauri JS alinhado em 2.11; o Rust alinha no build com
cargo update.
Downloads
- Dependências frontend para o latest: Tailwind CSS 3 → 4 (via
-
isBIM Visus 2D 0.15.0 Stable
released this
2026-06-20 16:12:27 +01:00 | 0 commits to main since this releaseAdicionado
- Auto-update via
tauri-plugin-updater+tauri-plugin-process: a app verifica
no arranque (não-bloqueante, depois da licença/splash) o manifest servido pelo
InforNext emhttps://next.infor.pt/api/visus2d/v1/update/{{target}}/{{arch}}/{{current_version}}?channel=stable
e, se houver versão nova, descarrega+instala o bundle assinado (do Gitea) e reinicia.
Tolerante a falhas — sem update / offline / endpoint indisponível é silencioso. - UI
UpdateBanner: aviso discreto no canto inferior direito (acima do rodapé) com
versão, notas de release limpas (Markdown → texto simples), barra de progresso durante
o download e botões "Atualizar e reiniciar" / "Mais tarde". Storelib/stores/updater.ts- i18n
update.*(pt/en). Reaproveita as classessurface-*/accent-*da linha isBIM.
- i18n
createUpdaterArtifacts: true+ blocoplugins.updaternotauri.conf.json(pubkey,
endpoint,windows.installMode: passive); permissõesupdater:defaulte
process:allow-restartemcapabilities/default.json.
Alterado
build-release.shunificado: argumento--publish, carregamento automático de
segredos de~/.config/isbim/release.env, leitura da chave do updater de
~/.tauri/isbim-visus2d-updater.key, password per-appVISUS2D_UPDATER_PASSWORD
(fallback ao genérico), verificação dos artefactos.app.tar.gz+.sigapós o build
e encadeamento de./publish-release.shquando se passa--publish.publish-release.shnovo: cria a release no Gitea (INFOR/isBIM-visus2d-releases),
sobe os artefactos de update como assets e faz smoke-test do manifest.
Requer o repo
INFOR/isBIM-visus2d-releasespúblico (download anónimo dos assets)
e a pubkey do updater colada notauri.conf.json(placeholderCOLAR_PUBKEY_VISUS2D).Downloads
- Auto-update via