diff --git a/Scripts/ASSET_WORKFLOW.md b/Scripts/ASSET_WORKFLOW.md index 643db1f9..8d724ad7 100644 --- a/Scripts/ASSET_WORKFLOW.md +++ b/Scripts/ASSET_WORKFLOW.md @@ -62,7 +62,7 @@ display at its native 3024 × 1964 size. All other Mac scenes, including Command Generator, use the standard 2360 × 1480 window capture. The full-screen window is captured in isolation; any excluded camera strip is padded black without capturing personal system UI. Overview uses the narrow MacBook Pro template -documented in `fastlane/device_frames/README.md`; retain its local source for +documented in the local frame templates section below; retain its local source for regeneration. Mac defaults to Workspace in all three languages. Mobile defaults to all five scenes on iPhone and iPad in all three languages. Filter a refresh or inspect its @@ -164,7 +164,7 @@ must be recaptured on iPhone 17 Pro before framing; they are rejected by size. - iPhone uses frameit's iPhone 17 Pro Silver frame at native screenshot size. - iPad uses Apple's official iPad Pro (M5) 13-inch Space Black PNG as a custom frameit device. Its opening matches the native capture exactly, with no resize. - Import the PNG once as described in `fastlane/device_frames/README.md`, or pass + Import the PNG once as described in the local frame templates section below, or pass `ipad_frame:/path/to/portrait.png`. The licensed source artwork stays local. - Mac Workspace fills the MacBook frame with the full-screen app capture. Capture aspect ratio is preserved with black padding where the template screen @@ -177,6 +177,44 @@ by [fastlane frameit-frames](https://github.com/fastlane/frameit-frames), based the upstream device artwork; follow its usage terms. +## Local frame templates + +### Official iPad Pro frame + +The `frames` lane uses Apple's **iPad Pro (M5) 13-inch, Space Black, Portrait** +PNG, available from [Apple Design Resources](https://developer.apple.com/design/resources/#product-bezels) +in the [iPad Pro (M5) download](https://devimages-cdn.apple.com/design/resources/download/Bezel-iPad-Pro-(M5).dmg). + +Download and open the disk image, review its Apple Design Resources license, +and copy `PNG/iPad Pro (M5) 13" - Space Black - Portrait.png` to: + +```text +.build/frameit-assets/ipad-pro-13-m5.png +``` + +Alternatively pass `ipad_frame:/absolute/path/to/portrait.png` to +`bundle exec fastlane frames`. Keep the licensed source artwork local; do not +commit or redistribute it as a standalone asset. The lane exports composed +Termind mockups using frameit, under Apple's design-resource usage terms. + +The unmodified template is 2300×3000. Its transparent screen opening is exactly +2064×2752 at (118, 124), matching the M5 simulator at native scale. frameit rotates +it for landscape captures and produces a 3000×2300 composition. Neither the +screenshot nor the frame is resized. The pinned frameit library has no built-in +M5 frame, so the lane registers this device at runtime. + +### MacBook Pro narrow frame + +Mac Overview compositions use the existing narrow-bezel MacBook Pro artwork, +prepared locally as `.build/frameit-assets/macbook_pro_template.png`. Supply an +alternate location with `mac_frame:/absolute/path/to/frame.png`. Keep the source +artwork outside version control and retain its original usage terms. + +The prepared transparent template is 4260×2620, with a 3454×2243 screen opening +at (403, 74). The native 3024×1964 capture scales proportionally into this opening. +Its black full-screen camera strip remains visible at the top; no desktop or +personal system UI is added. A missing template fails before publishing outputs. + ## Brand and icon exports The master mark is `com.akinokaede.termind/design/brand/termind.svg`. diff --git a/fastlane/device_frames/README.md b/fastlane/device_frames/README.md deleted file mode 100644 index f2749d5d..00000000 --- a/fastlane/device_frames/README.md +++ /dev/null @@ -1,35 +0,0 @@ -# Official iPad Pro frame - -The `frames` lane uses Apple's **iPad Pro (M5) 13-inch, Space Black, Portrait** -PNG, available from [Apple Design Resources](https://developer.apple.com/design/resources/#product-bezels) -in the [iPad Pro (M5) download](https://devimages-cdn.apple.com/design/resources/download/Bezel-iPad-Pro-(M5).dmg). - -Download and open the disk image, review its Apple Design Resources license, -and copy `PNG/iPad Pro (M5) 13" - Space Black - Portrait.png` to: - -```text -.build/frameit-assets/ipad-pro-13-m5.png -``` - -Alternatively pass `ipad_frame:/absolute/path/to/portrait.png` to -`bundle exec fastlane frames`. Keep the licensed source artwork local; do not -commit or redistribute it as a standalone asset. The lane exports composed -Termind mockups using frameit, under Apple's design-resource usage terms. - -The unmodified template is 2300×3000. Its transparent screen opening is exactly -2064×2752 at (118, 124), matching the M5 simulator at native scale. frameit rotates -it for landscape captures and produces a 3000×2300 composition. Neither the -screenshot nor the frame is resized. The pinned frameit library has no built-in -M5 frame, so the lane registers this device at runtime. - -## MacBook Pro narrow frame - -Mac Overview compositions use the existing narrow-bezel MacBook Pro artwork, -prepared locally as `.build/frameit-assets/macbook_pro_template.png`. Supply an -alternate location with `mac_frame:/absolute/path/to/frame.png`. Keep the source -artwork outside version control and retain its original usage terms. - -The prepared transparent template is 4260×2620, with a 3454×2243 screen opening -at (403, 74). The native 3024×1964 capture scales proportionally into this opening. -Its black full-screen camera strip remains visible at the top; no desktop or -personal system UI is added. A missing template fails before publishing outputs. diff --git a/fastlane/lib/screenshot_frames.rb b/fastlane/lib/screenshot_frames.rb index 1328ef23..02797d08 100644 --- a/fastlane/lib/screenshot_frames.rb +++ b/fastlane/lib/screenshot_frames.rb @@ -47,10 +47,10 @@ class ScreenshotFrames end if @devices.include?("ipad") && FastImage.size(@ipad_frame) != [2300, 3000] raise "Import the official iPad Pro (M5) 13-inch Space Black portrait PNG first; " \ - "see fastlane/device_frames/README.md or pass ipad_frame:/path/to/frame.png" + "see Scripts/ASSET_WORKFLOW.md or pass ipad_frame:/path/to/frame.png" end if @devices.include?("mac") && FastImage.size(@mac_frame) != [4260, 2620] - raise "Import the narrow MacBook Pro template first; see fastlane/device_frames/README.md " \ + raise "Import the narrow MacBook Pro template first; see Scripts/ASSET_WORKFLOW.md " \ "or pass mac_frame:/path/to/frame.png" end @jobs.each do |job|