From 84b8e646521b7232b53c762cf28c9a5c62b8de68 Mon Sep 17 00:00:00 2001 From: 3dtours Date: Fri, 2 Oct 2026 19:46:06 +0700 Subject: [PATCH] feat(frame): add OLD FILM LANDSCAPE and OLD FILM PORTRAIT from old_film.png --- docker/frontend/public/assets/old_film.png | Bin 0 -> 80610 bytes docker/frontend/shared/types/index.ts | 4 +- docker/frontend/shared/utils/recipeShare.ts | 5 ++- docker/frontend/src/App.tsx | 2 + docker/frontend/src/engine/assets.ts | 11 ++++- docker/frontend/src/engine/exportEngine.ts | 46 ++++++++++++++++++++ docker/frontend/src/i18n/en.ts | 2 + docker/frontend/src/i18n/vi.ts | 2 + 8 files changed, 68 insertions(+), 4 deletions(-) create mode 100644 docker/frontend/public/assets/old_film.png diff --git a/docker/frontend/public/assets/old_film.png b/docker/frontend/public/assets/old_film.png new file mode 100644 index 0000000000000000000000000000000000000000..53198df430111af284fa8b5ac6a9898e0aca42da GIT binary patch literal 80610 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 s.baseFilter), 'none']; -const FRAMES: FrameId[] = ['none', 'polaroid', 'classic-white', 'cinematic', 'wallframe', 'wallframe-landscape']; +const FRAMES: FrameId[] = [ + 'none', 'polaroid', 'classic-white', 'cinematic', 'wallframe', 'wallframe-landscape', + 'old-film', 'old-film-portrait', +]; const hash = (s: string): number => { let h = 0x811c9dc5; diff --git a/docker/frontend/src/App.tsx b/docker/frontend/src/App.tsx index 80bef23..2e32a29 100644 --- a/docker/frontend/src/App.tsx +++ b/docker/frontend/src/App.tsx @@ -111,6 +111,8 @@ const FRAMES: { id: FrameId; label: MsgKey }[] = [ { id: 'cinematic', label: 'frame.cinematic' }, { id: 'wallframe', label: 'frame.wall' }, { id: 'wallframe-landscape', label: 'frame.wallLand' }, + { id: 'old-film', label: 'frame.oldFilm' }, + { id: 'old-film-portrait', label: 'frame.oldFilmPort' }, ]; // The recipe a saved photo's base is rendered through: the neutral stock — diff --git a/docker/frontend/src/engine/assets.ts b/docker/frontend/src/engine/assets.ts index ce45ac3..483ee78 100644 --- a/docker/frontend/src/engine/assets.ts +++ b/docker/frontend/src/engine/assets.ts @@ -34,13 +34,20 @@ export function probeGpu(): boolean { export async function loadEngine(): Promise<{ assets: RenderAssets; gpu: boolean }> { await initSkia({ locateFile: (file) => `/wasm/${file}` }); if (!assets) { - const [textFont, emojiFont, wallframePng, markFonts] = await Promise.all([ + const [textFont, emojiFont, wallframePng, oldFilmPng, markFonts] = await Promise.all([ buf('/assets/Cousine-Regular.ttf'), buf('/assets/NotoEmoji-GPS.ttf'), buf('/assets/wallframe.png'), + buf('/assets/old_film.png'), Promise.all(MARK_FACES.map(async (face) => ({ family: face.family, bytes: await buf(face.file) }))), ]); - assets = { textFont, emojiFont, wallframe: new Uint8Array(wallframePng), markFonts }; + assets = { + textFont, + emojiFont, + wallframe: new Uint8Array(wallframePng), + oldFilm: new Uint8Array(oldFilmPng), + markFonts, + }; } return { assets, gpu: probeGpu() }; } diff --git a/docker/frontend/src/engine/exportEngine.ts b/docker/frontend/src/engine/exportEngine.ts index 2c09053..dfbab1b 100644 --- a/docker/frontend/src/engine/exportEngine.ts +++ b/docker/frontend/src/engine/exportEngine.ts @@ -76,6 +76,7 @@ export interface RenderAssets { textFont: ArrayBuffer; // assets/Cousine-Regular.ttf emojiFont: ArrayBuffer; // assets/NotoEmoji-GPS.ttf wallframe: Uint8Array; // wallframe.png + oldFilm: Uint8Array; // old_film.png // The FONT option's faces beside DEFAULT (see assets.ts MARK_FACES). markFonts: { family: string; bytes: ArrayBuffer }[]; } @@ -690,6 +691,7 @@ function replaceThrough( let faces: { typeface: any; iconTypeface: any } | null = null; let wallframeImage: any = null; +let oldFilmImage: any = null; function loadFaces(assets: RenderAssets) { if (faces) return faces; @@ -762,6 +764,19 @@ function loadWallframe(assets: RenderAssets) { return wallframeImage; } +// Both films are the same sheet of distressed paper: `old-film` lays it down as +// it is, `old-film-portrait` turns it 90° CW so the torn edge and the dust lie +// the other way round. Unlike the walls the sheet has no mat of its own — its +// middle is a transparent window and its opaque part is a border a couple of +// percent wide — so it is drawn OVER the photo and never crops it. +const isOldFilm = (id: FrameId) => id === 'old-film' || id === 'old-film-portrait'; + +function loadOldFilm(assets: RenderAssets) { + if (oldFilmImage) return oldFilmImage; + oldFilmImage = Skia.Image.MakeImageFromEncoded(assets.oldFilm); + return oldFilmImage; +} + export async function renderPhoto(input: RenderInput): Promise { const { recipe, frameId, options } = input; const owned: SkDisposable[] = []; @@ -1444,6 +1459,37 @@ export async function renderPhoto(input: RenderInput): Promise