Nodes/ComfyUI-Html2Image/🐟Camera Watermark
ComfyUI Node

🐟Camera Watermark

Stamp your gens with a fake camera info bar — model, GPS, timestamp and all

By liuqianhonga·Created 2 years ago·Updated about a year ago· 16
🐟Camera Watermark
    • IMAGE
    modelCOMFYUI ULTRA
    date2026.07.20 18:59:45
    brandliuqianhong
    device23mm f/1.0 1/320 ISO1495
    gps51°30'00"N 0°10'00"E
    width1280

    At zero impressions you're probably the first person reading this, so: this node renders the little EXIF info bar you see at the bottom of phone photos - camera model, timestamp, lens settings, GPS coordinates - as a clean ComfyUI IMAGE. It's the "make your AI image look like it was actually shot on a phone" node, and honestly that's a niche with a real audience.

    If you generate photorealistic images and want that "shot on iPhone by a person who was there" feel, a believable camera watermark does a lot of heavy lifting. You overlay the bar along the edge of a generated image and suddenly it reads as a real capture. It's also just fun to make fake "shot on" lines for a joke or a mockup.

    How it works

    Same Selenium engine as the rest of this pack, one template. The node renders templates/camera_watermark/template.html with your values, base64-encodes the HTML into a data:text/html URL, opens it in headless Chrome, and screenshots just the #preview-info element. So what you get is a wide, short bar - the height is baked into the template and scales with the width, which is why the only size input is width (64–2048). You set the width, the bar keeps its proportions.

    The inputs (all required, all editable)

    • model - the camera name, default COMFYUI ULTRA. This is the line that shows in bold.
    • date - a timestamp string in YYYY.MM.DD HH:MM:SS format. Defaults to the current time when you load the node, so it goes stale if you leave the workflow open.
    • brand - a dropdown, and this one's clever: it's auto-generated from the logo files in the pack's brand/ folder. You get whatever's shipped: apple, canon, sony, leica, fujifilm, xiaomi, huawei, dji, nikon corporation, plus a couple of oddballs like liuqianhong. The list rebuilds at startup from whatever files are there.
    • device - the settings line, default 23mm f/1.0 1/320 ISO1495. Pure text; the node doesn't validate it against anything.
    • gps - coordinates, default 51°30'00"N 0°10'00"E. Also pure text. Nobody checks.

    Output

    One IMAGE - the rendered bar. Composite it onto your photo with an Overlay/Composite node, position it along the bottom, done.

    Customizing it

    Want your own brand? Drop an SVG or PNG into the pack's brand/ directory (name it after the brand) and restart ComfyUI - the dropdown picks it up automatically. Want to change the layout, fonts, or colors? The template is plain HTML you can edit. Fair warning: the README tells you to look in template/camera_watermark/template.html, but the real path is templates/camera_watermark/template.html (with an s). Classic README rot.

    Installing

    Same as the whole pack: ComfyUI Manager → search "ComfyUI-Html2Image", or

    cd ComfyUI/custom_nodes
    git clone https://github.com/liuqianhonga/ComfyUI-Html2Image.git
    pip install -r requirements.txt
    

    then restart. Dependencies: selenium, webdriver_manager, jinja2, Pillow. And the pack-wide gotcha that applies here too: you need Google Chrome installed. Selenium launches a real Chrome binary - webdriver_manager only fetches the chromedriver, not the browser.

    Troubleshooting

    • A brand is missing from the dropdown - there's no matching logo file in brand/, or you added one after startup (restart required).
    • Watermark renders tiny or cropped - it's a bar, not a full image; that's by design. If it looks off, drop width and composite at a smaller scale.
    • Date is wrong - you loaded the node yesterday and left it there; edit the field.
    • First run is slow - one-time chromedriver download.

    It's a one-trick pony, but it's a decent trick. If you've ever wanted to caption a generated photo "COMFYUI X1 ULTRA" with GPS coordinates for a place you've never been, this is your node.

    Categoryimage

    Inputs (6)

    NameTypeDefaultDescription
    modelSTRINGCOMFYUI ULTRA
    dateSTRING2026.07.20 18:59:45
    brandCOMBOliuqianhong11 options: xiaomi, huawei, fujifilm, unknow, apple, sony, +5
    deviceSTRING23mm f/1.0 1/320 ISO1495
    gpsSTRING51°30'00"N 0°10'00"E
    widthINT128064–2048

    Outputs (1)

    NameTypeDescription
    IMAGEIMAGE