Ankorss
Select, click, done!
We built this script to help make adjusting anchor points easier. It works smoothly whether you're using footage, shapes, solids, or text layers. It's designed to be fast and efficient, and you can change an anchor point's position even if you've already started animating – your keyframes will remain consistent.
Get Ankorss Free
Free. Fast. Already used by 0 +
Your workflow will thank you.
Features
- Works with moving layers without breaking animation
- Pixel-perfect alignment for text layers
- Text animators-friendly
- 9-point anchor positioning
- No plugins required
Works with Moving Layers
Adjust anchor points on layers already in motion without breaking their movement or introducing unexpected jumps. Your animations are safe.
Pixel-Perfect Alignment
Set anchor points at the true base of your text layers. Our script intelligently ignores descenders, giving you pixel-perfect alignment without manual workarounds.
Text Animators-Friendly
No more fighting with anchor points. Our script seamlessly works with text animators so you get perfect alignment without breaking your animations.
Technical Specifications
Ankorss
Guide
Move anchor points to any position without breaking your animations. Select your layers, click a button, done.
Free Script: Works with all After Effects versions that support ScriptUI.
Quick Start
Getting started is quick and straightforward:
-
Download and extract the
.zipfile from your account dashboard or the download link. -
Run the script via File → Scripts → Run Script File... and
select
Ankorss.jsx. - Select the layer(s) you want to adjust.
- Click one of the 9 position buttons in the panel to move the anchor point.
Tip: Watch our video tutorial for a visual walkthrough.
Installation Optional
If you'd like the script to be dockable (accessible from the Window menu like other panels), you can install it permanently:
-
Locate the
Ankorss.jsxscript file inside your extracted folder. -
Copy this file to your After Effects ScriptUI Panels folder:
Windows:
C:\Program Files\Adobe\Adobe After Effects [version]\Support Files\Scripts\ScriptUI PanelsMac:
/Applications/Adobe After Effects [version]/Scripts/ScriptUI Panels - Restart After Effects.
- Access the panel from Window → Ankorss.
Note: Installation is not required. You can always run the script directly via File → Scripts → Run Script File... without installing.
Key Features
Works with Complex & Moving Layers
Already started animating? No problem. Ankorss calculates dynamic offsets that account for parented chains, custom scaling, and complex rotations. Your animations and layer positions stay exactly where they should be, with zero unwanted shifts.
Batch & Group Operations
Process multiple layers at once using two distinct modes: Each Layer applies the anchor to each layer's individual bounds, while All Layers treats your selection as a single unified bounding box—perfect for complex rigs and multi-element designs.
Independent Axis Locking
Hold [ALT] while clicking any directional button to move the anchor point purely along the X or Y axis. This locks the other axis in place, giving you precise control without disrupting your current alignment.
Dedicated Text Anchor Mode
The script has two button grids: the top grid for regular layers, and a dedicated Text Anchor grid below it. The Text Anchor buttons ignore descenders (like "g" and "y" tails), giving you pixel-perfect baseline alignment without manual workarounds.
Text Animator Friendly
Working with text animators? Ankorss handles them seamlessly. You can optionally lock the anchor point calculation to a specific frame, ensuring perfect alignment even when text properties animate.
Full Undo Support
Made a mistake? The script includes built-in undo functionality. All anchor point changes are grouped into a single undo step, so you can revert instantly.
Changelog
v1.3.0 – Group Operations & Independent Axis Locking (Current)
- New "All Layers" Group Mode: You can now treat multiple selected layers as a single unified bounding box. The script calculates the aggregate bounds across the composition coordinate space and snaps the anchor point of each individual layer relative to the entire group—perfect for complex rigs or multi-element designs.
- Independent Axis Locking (ALT + Click): Implemented
[ALT]+ Click functionality for the directional buttons. This allows you to move an anchor point purely along the X or Y axis without disrupting its current position on the other axis. - Coordinate Space Refactoring: Completely rewrote the underlying math to evaluate anchor point and position offsets dynamically. It now accounts for parented chains, custom layer scaling, and complex rotations, ensuring zero unwanted shifts in layer positioning during anchor relocation.
- Global Scope Isolation: Wrapped the entire source code in an Immediately Invoked Function Expression (IIFE). This critical architectural update prevents the script's internal variables from polluting the global After Effects environment, eliminating potential conflict errors when running alongside other complex scripts and extensions.
- UI & UX Enhancements: Upgraded the mode selection interface with clearer toggles and added interactive tooltips to better explain "Each Layer" vs. "All Layers" behaviors.
v1.2.0 – Advanced Text Layer Integration
- Dedicated Text Anchor Panel: Introduced an entirely new control suite specifically built for Text Layers to address the unique way After Effects handles font metrics and baselines.
- Multi-line Text Support: Implemented intelligent row-counting logic using the font's
fontSizeandleadingproperties. The script accurately computes the vertical center between multiple lines of text, ensuring mid-anchors fall exactly between rows rather than arbitrarily splitting characters. - Baseline-Aware Alignment: Deployed a hidden slider control (
mm_FirstLine) that extracts accurate baseline locations directly from the text layer properties, allowing pixel-perfect top and bottom text bounding box alignments that don't shift when ascenders/descenders change.
v1.1.0 – Time Parsing & Performance Controls
- Time Evaluation Dropdown: Replaced static anchor computations with dynamic time sampling. You can now define exactly when the bounding box (
sourceRectAtTime) is evaluated:- Dynamic (updates every frame)
- Current (freezes at the current playhead)
- Layer Start / End / Percent (samples bounds at specific layer milestones)
- Comp End or Specific Time input.
- Posterize Time Optimization: Added a toggle to inject
posterizeTime(0);into the resulting expressions. This essentially bakes the evaluation, dramatically reducing render times and heavy caching overhead when Dynamic updates aren't needed.
v1.0.0 – Initial Release
- Core Functionality: Released the fundamental dockable UI panel allowing instant 9-point anchor mapping (Top-Left, Center, Bottom-Right, etc.).
- Expression-Based Relocation: Utilized
sourceRectAtTime()expressions coupled with compensation vectors applied directly to thePositionproperty to reposition the anchor point without visibly moving the layer on screen. - Keyframe Preservation: Built-in safeguards that iterate through existing position keyframes, applying relative offset adjustments to ensure animations remain perfectly intact after an anchor point adjustment.
FAQ
I accidentally moved an anchor point on the wrong layer. How do I fix this?
Simply use Edit → Undo (Ctrl/Cmd+Z). Ankorss groups all its changes into a single undo step, so one undo reverts everything.
Will this break my existing position keyframes?
No! Ankorss intelligently adjusts both the anchor point and position simultaneously, so your layer stays exactly where it is visually. Your animation remains intact.
How does it work with text animators?
When text animators are present, the layer bounds can change over time. Ankorss lets you optionally specify a reference frame for calculating the anchor point position, ensuring consistent results.
My text anchor point isn't at the visual baseline. Why?
You're probably using the top button grid, which uses the full layer bounds (including descenders like "g" and "y"). For text layers, use the Text Anchor buttons instead; these ignore descenders and align to the visual baseline of your text.
The script isn't showing up in the Window menu.
Make sure you placed the .jsx file in the correct ScriptUI Panels folder (not the parent Scripts folder) and restarted After Effects.
Can I use this for commercial projects?
Absolutely! Ankorss is free for both personal and commercial use. See our Terms of Service for full details.
Need Help?
We're here to help you master anchor point management!
Email: Loading…
Response time: Usually within 24 hours, sometimes within minutes.
Get Ankorss in under a minute
One click, instant access, free forever.
Free forever