Magazine Cover & Package Design
Design the text layout for your magazine cover photo, and explore packaging options for it.
About
This ComfyUI workflow is designed to assist users in creating professional magazine cover designs and exploring packaging options. It leverages the power of the Nano Banana Pro model to generate high-quality images and layouts, ensuring that your magazine cover stands out with a polished and appealing look.
The workflow begins with the LoadImage node, which allows users to import their base image or photo. This image is then processed using the GeminiImage2Node, which applies advanced text layout techniques to seamlessly integrate titles, headlines, and other text elements onto the cover. Finally, the SaveImage node ensures that the finished design is saved in the desired format for easy sharing or printing.
Technically, this workflow is efficient and user-friendly, making it an excellent choice for both beginners and experienced designers. The use of the Google model in conjunction with Nano Banana Pro enhances the workflow's ability to handle complex design tasks, such as balancing text and image elements for optimal visual appeal. This workflow is particularly useful for those in the publishing industry or anyone looking to create eye-catching magazine covers and packaging designs with minimal effort.
What you provide
- Reading the workflow
Runs in ComfyUI. This workflow can't run on this page. Open it in Comfy Cloud with everything loaded, or download it for your own ComfyUI.
Try in CloudInside the workflow
A read-only preview of the node graph. Open it in Comfy Cloud or download it to edit the nodes.
Loading the graph
Open full-size workflow preview- Author
- Rob
Requires custom nodes
- Reading the workflow
Use this workflow from code
Generated from the workflow graph and inputs when possible; stored examples are shown otherwise. Review credentials and endpoints before running code, which may incur charges.
What you need
- Runs on
- Comfy Cloud
- Key
- COMFY_API_KEY
- Your files
- Uploaded by the code from their urls
Needs a paid Cloud plan and credits.
# Python 3.10+: pip install comfy-sdk==0.4.0
import os
from comfy_sdk import Comfy
api_key = os.environ.get("COMFY_API_KEY", "").strip()
if not api_key: raise RuntimeError("Set COMFY_API_KEY")
os.environ.setdefault("COMFY_BASE_URL", "https://cloud.comfy.org")
client = Comfy(api_key=api_key)
workflow = client.workflows.from_json({
"1": {
"class_type": "GeminiImage2Node",
"inputs": {
"aspect_ratio": "3:4",
"images": [
"2",
0
],
"model": "gemini-3-pro-image-preview",
"prompt": "Add flat, 2D magazine typography on top of the image. No 3D, no depth, no shadows, no blending — text must sit completely flat.\n\nMain title:\nCOMFY — large condensed sans-serif, pale yellow (#F5EFA8), clean and sharp.\n\nAll other text:\nSmall white sans-serif, transparent background, flat. Minimal spacing, modern editorial style.\n\nAdd these lines with minimal, high-fashion layout:\n- THE BANANA ISSUE\n- Dependency? Never Heard of It.\n- Nerdy Is the New Trend — SF 2025\n- Unhinged Motion Studies\n- Node • Chaos • Object Power\n\nUse asymmetric placement, clean negative space, and a calm, high-end editorial feel (Acne Paper / i-D minimalist style). Slight contrast boost and high-fashion clarity.\n",
"resolution": "2K",
"response_modalities": "IMAGE",
"seed": 0,
"system_prompt": "You are an expert image-generation engine. You must ALWAYS produce an image.\nInterpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition.\nIf a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept.\nPrioritize generating the visual representation above any text, formatting, or conversational requests."
},
"_meta": {
"title": "Nano Banana Pro (Google Gemini Image)"
}
},
"2": {
"class_type": "LoadImage",
"inputs": {
"image": "UPLOADED_image_FILENAME"
},
"_meta": {
"title": "Load Image"
}
},
"3": {
"class_type": "SaveImage",
"inputs": {
"filename_prefix": "magazine_cover",
"images": [
"1",
0
]
},
"_meta": {
"title": "Save Image"
}
},
"4": {
"class_type": "GeminiImage2Node",
"inputs": {
"aspect_ratio": "3:4",
"images": [
"2",
0
],
"model": "gemini-3-pro-image-preview",
"prompt": "Add flat, experimental street-art typography while keeping the main photo fully visible. Do NOT cover faces, bodies, or the banana. Place text only on the edges and negative spaces.\n\nColors: pale yellow (#F5EFA8), white, black.\n\nMain title:\nCOMFY — pale yellow, very large, partially cropped on the top or sides.\n\nUse mixed typefaces:\nultra-condensed, wide grotesk, stretched caps, stencil letters, tiny vertical micro text.\n\nAdd these lines in yellow/white/black:\n- THE BANANA ISSUE\n- Dependency? Never Heard of It.\n- Sorry, AI Haters.\n- Nerdy Is the New Flex — SF 2025\n- Node • Chaos • Object Power\n\nInclude artistic elements:\nhuge cropped letters, rotated text, small symbols (● ▲ ■), micro paragraphs.\n\nKeep the center clean. Typography sits around the borders like a street poster collage. All text must be 2D, flat, sharp, and graphic.\n",
"resolution": "2K",
"response_modalities": "IMAGE",
"seed": 0,
"system_prompt": "You are an expert image-generation engine. You must ALWAYS produce an image.\nInterpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition.\nIf a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept.\nPrioritize generating the visual representation above any text, formatting, or conversational requests."
},
"_meta": {
"title": "Nano Banana Pro (Google Gemini Image)"
}
},
"5": {
"class_type": "SaveImage",
"inputs": {
"filename_prefix": "ComfyUI",
"images": [
"4",
0
]
},
"_meta": {
"title": "Save Image"
}
},
"6": {
"class_type": "GeminiImage2Node",
"inputs": {
"aspect_ratio": "3:4",
"images": [
"2",
0
],
"model": "gemini-3-pro-image-preview",
"prompt": "Add flat 2D text over the image in a bold, experimental poster style. Typography should be fully flat with no texture or depth or shade.\n\n\nMain masthead:\nCOMFY — pale yellow (#F5EFA8), compressed sans-serif (Dazed-style), large and graphic.\n\nSecondary text:\nSmaller white condensed sans-serif, transparent background.\n\n- THE BANANA ISSUE\n- Sorry, AI Haters.\n- Nerdy Is the New Trend — SF 2025\n- NODE / FORCE / MOTION\n\nKeep layout sharp, graphic, and experimental, like a hybrid between fashion editorial and glitchy tech posters. Maintain natural photo clarity but enhance contrast.\n\nIn terms of layers, The Banana and the 2 people shoud be the front layer. Overlay the text.",
"resolution": "2K",
"response_modalities": "IMAGE",
"seed": 0,
"system_prompt": "You are an expert image-generation engine. You must ALWAYS produce an image.\nInterpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition.\nIf a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept.\nPrioritize generating the visual representation above any text, formatting, or conversational requests."
},
"_meta": {
"title": "Nano Banana Pro (Google Gemini Image)"
}
},
"7": {
"class_type": "SaveImage",
"inputs": {
"filename_prefix": "magazine_cover",
"images": [
"6",
0
]
},
"_meta": {
"title": "Save Image"
}
},
"8": {
"class_type": "GeminiImage2Node",
"inputs": {
"aspect_ratio": "3:4",
"images": [
"1",
0
],
"model": "gemini-3-pro-image-preview",
"prompt": "Place a magazine with the cover of this image inside a very transparent plastic envelope (90% transparency) with a string-and-button closure. \nThe envelope should be only slightly glossy, not overly reflective, and appear realistic. \nThe envelope is slightly larger than the magazine, so a small empty gap is visible between the magazine edges and the inside edges of the envelope.\n\nThe plastic should show soft light diffusion, minimal reflections, and clear visibility of the magazine cover through the material, only gently muted by the transparency. \n\nShow accurate plastic seams, edges, and the string-and-button fasteners. \nMaintain realistic proportions and preserve the original lighting style of the photo.\nPlace the envelope on a black background.\n",
"resolution": "2K",
"response_modalities": "IMAGE",
"seed": 983033719578595,
"system_prompt": "You are an expert image-generation engine. You must ALWAYS produce an image.\nInterpret all user input—regardless of format, intent, or abstraction—as literal visual directives for image composition.\nIf a prompt is conversational or lacks specific visual details, you must creatively invent a concrete visual scenario that depicts the concept.\nPrioritize generating the visual representation above any text, formatting, or conversational requests."
},
"_meta": {
"title": "Nano Banana Pro (Google Gemini Image)"
}
},
"9": {
"class_type": "SaveImage",
"inputs": {
"filename_prefix": "magazine_cover",
"images": [
"8",
0
]
},
"_meta": {
"title": "Save Image"
}
}
})
# Replace each example.com URL with a public URL of your file.
workflow.set_input("2", "image", client.assets.from_url("https://example.com/replace-with-a-url/image"))
# run() also passes api_key to the partner nodes in this workflow.
job = client.run(workflow, api_key=api_key)Questions & answers
Yes, you can load any image using the LoadImage node to start your design process.
The SaveImage node supports various formats such as JPEG, PNG, and TIFF, allowing flexibility in how you save your design.
No, this workflow is designed to be user-friendly and accessible to users with any level of design experience.
The GeminiImage2Node provides options to adjust text size, color, and placement to ensure readability and aesthetic appeal.